1

重複の可能性:
C++ (Win32) でプロセスを効果的に強制終了するには?


重要なタスクを実行しなければならないプログラムを作成しています。(まれに) ユーザーが誤って開始した可能性のある別のプログラム (a.exe としましょう) とリソースの競合が発生する場合があります。
私がやりたいことは、残りの作業を行う前に、実行中の a.exe を強制終了することです。
c++ (Windows で実行中) から、別のプログラム/プロセスの実行を停止する方法はありますか?
美しいブーストに何かあるかもしれないと思っていました...
ありがとうございます。

4

3 に答える 3

3

画像名が確かな場合はa.exe、非常に簡単です。

system("taskkill /F /IM a.exe >nul 2>&1");
于 2012-05-29T22:25:47.520 に答える
1

Windows について話している場合はtaskkill、既に述べたように使用するか、kernel32.dll のTerminateProcessメソッドを使用するかによって異なります。

それに関する詳細情報 - http://msdn.microsoft.com/en-us/library/windows/desktop/ms686714(v=vs.85).aspx

kill*nix を使用している場合は、 にある POSIXメソッドを使用するのと同じくらい簡単signal.hです。

それに関する詳細情報 - http://linux.die.net/man/2/kill おっと、Windowsに言及している質問を正しく読んでください

于 2012-05-29T22:31:09.970 に答える
1

Windowsで作業していると仮定します。

.NET メソッドを使用できます。投稿リンクさせていただきます。https://stackoverflow.com/a/116098/1424790

必要に応じて、投稿を C++ に翻訳できます (ただし、そのためには時間が必要です)。

于 2012-05-29T22:25:10.110 に答える