公式マニュアルによると、私はこのコードをテストしました:
wxProcess * proc = wxProcess::Open("C:\\windows\\notepad.exe");
しかし、このコードは正しく機能しません。システムマネージャーでメモ帳プロセスが機能しているのがわかりますが、メモ帳ウィンドウなどがありません。また、コンソールアプリケーションを起動すると、新しいコンソールウィンドウにも私のテキストにもテキストが表示されません。
それを修正する方法は?ありがとう!
提供されたコードは、他のアプリケーションで問題なく機能しますcalc
。
wxProcess * process = wxProcess::Open(wxT("calc"));
wxLogDebug(wxT("Process: %s"), process != NULL ? wxT("OK") : wxT("Error"));
OKを表示し、計算ウィンドウが表示されます。
IOリダイレクトもプロセス終了通知も必要ない場合、プロセスを起動する最も簡単な方法は、フラグ付きのwxExecutewxEXEC_ASYNC
を使用することです。