私が書いたプログラムがあります。main.exe
このソフトウェアはHTTP経由でメッセージを受信し、それをターミナル(STDOUT)に出力します。私はMSNこのソフトウェアをサービスとして登録し、起動後に自動的に起動するようにします。
(この場合、リモートでログインできないため、スタートアップ フォルダーを使用することは適切ではありません。そのため、ログインせずに起動後すぐにプログラムが起動するソリューションが必要でした。)
現在、バックグラウンド プロセスとして実行されていますが、その出力を確認する必要があります。
実行中のバックグラウンド プロセスの実際の出力を確認するために、新しいターミナル ウィンドウを開くことは可能ですか?
答え1
実行中のバックグラウンド プロセスの実際の出力を確認するために、新しいターミナル ウィンドウを開くことは可能ですか?
あなたの場合、いいえ、これは不可能です。プログラムをサービスにすると、SYSTEM アカウントによって実行されます。SYSTEM としてログインできないため、そのセッションと対話することは不可能です。もしこれが可能であれば、いずれにしても重大なセキュリティ上の欠陥となります。
この問題を回避する唯一の方法は、プログラムをどこかに保存されたログファイルに出力し、そのログファイルを開くことです。
ファイルを開いて、追加し、再度閉じる必要があることに注意してください。そうしないと、プログラムはファイルに書き込みロックを保持し、ログファイルの内容を表示できなくなります。