c ++から別のプログラムを実行し、その出力をファイルにリダイレクトして、その結果コードを返したいと思います。しかし、プログラムの実行に失敗した場合(パスが正しくないなど)、知りたいです。
これが私の問題です。ファイルをリダイレクトし、プログラムの結果コードを取得し、システムのエラーを一度に取得するにはどうすればよいですか?
System()
:結果を返し、リダイレクトするのは簡単ですが、結果がシステムエラーなのかアプリケーションの結果なのかを知る方法はありませんposix_spawn()
:システムエラーがあるかどうかはわかりますが、アプリケーションの結果コードを取得するにはどうすればよいですか?
実行されたアプリケーションのコードを制御しないことに注意してください。Windows(申し訳ありませんが...)OpenProcess()
関数を使用すると簡単です。必要なOpenProcess()
のはLinuxです。
ありがとう