星さん、Chukiさん、回答ありがとうございました。
サーバー/クライアント型のC++プログラムとして最初から設計し直した方が良さそうでしたが、
解決策としては、サービスプログラムを作成し、リモート側でサービスとしてインストールしておき、
PowerShellのInvoke-Commandからはサービスコマンドの呼びだしだけを行うように変更しました。
Invoke-Commandはリモート側のコマンド実施のリターンコード取得方法も無いので、
あまり複雑なことをするのには向いてないですね。
いろいろと勉強になりました。