1

私はプロセスの経験がまったくありませんが、私が設定していることは本当に単純なはずです。私がするのは、次のようなプロセスを生成することだけです。

int spawnId = spawnv(_P_NOWAIT,"wgetlocal.exe",my_env);

さて、私がやりたいのは、一定時間後にこのプログラムを強制終了することです。ただし、返されるspawnIdは、たとえばを呼び出すときに必要なものではありませんtaskkill /PID [number] /F

使用してみましotherId2 = GetWindowThreadProcessId((HWND)spawnId,OUT otherId1)たが、どちらもotherId1正しいotherId2PIDを指定していません。

誰かが彼と一緒に私を助けることができれば、私はさまざまに感謝するでしょう。よろしく、ロアルド

4

1 に答える 1

1

MSDN から:

_spawnv非同期のor _wspawnv( mode に指定された or ) からの戻り値は、プロセス ハンドル_P_NOWAITです。_P_NOWAITO

プロセス ハンドルがある場合は、 を使用できますTerminateProcess

ハンドルの種類は互換性がありません。HWNDプロセス ハンドルを型キャストして、突然ウィンドウ ハンドルにすることはできません。

于 2009-05-25T01:29:52.733 に答える