私は現在、SSH経由でリモートインストールを可能にするソフトウェアプロジェクトに取り組んでいます。まず小さなインストーラーを転送し、次にメインアプリケーションの圧縮アーカイブを転送します。インストーラーは転送されたパッケージを解凍しますが、実際にアプリケーションをバックグラウンドで実行したい部分で行き詰まってしまいます。Linuxでは、ノーフープコマンドで、調べてみると、これは通常Windowsのスタートコマンドで実行できるのですが、うまくいきません。テストとしてstart calc.exeを実行すると、タスクリストにプロセスが表示されます(GUIはありませんが)。しかし、自分で.exeを実行しようとすると、「app.exe」を起動し、「-master」をクリックします。フィードバックがまったく得られません。start コマンドの信頼できる代替手段はありますか? プロセスは長時間実行されるため、SSH セッションから独立している必要があります。また、start calc.exe を使用したテストは、リモート ホスト (Windows 7 VM) でのみ成功しました。利便性のため、現時点ではテストに主に使用しているローカルホスト (Windows) で結果を再現しようとしましたが、これも失敗しました。よろしくお願いします。
答え1
SSH経由でリモートWindowsコンピュータにアクセスできる場合は、説明に従ってRDPの逆転送トンネルを実行します。ここそして、通常どおり GUI セッションにログインします。ログアウトせずに SSH トンネルを終了するか、ログアウトせずに RDP から切断すると、そこで起動したすべてのプログラムでセッションがアクティブになります。
リバーストンネルを設定できない場合は、別の解決策を使用できます。
タスクスケジューラを介してセッション0でプログラムを実行します。ターミナルを使用してタスクを設定できます。schtasks.exe
この場合、IPC、メッセージループ、またはファイルを介してのみプログラムと通信できます。