[リストへもどる]
一括表示

投稿時間:2003/09/09(Tue) 11:06
投稿者名:おと
URL :
タイトル:
プロセスの終了
いつも参考にさせて頂いております。

プロセスIDからハンドルを取得して、
プロセスを終了したいのですが、うまくいきません。
以下のコーディングをしています。

hProcess = OpenProcess(PROCESS_ALL_ACCESS, False, 1400)
ret = SendMessage(hProcess, WM_CLOSE, 0&, 0&)

御教え願えませんでしょうか。

投稿時間:2003/09/09(Tue) 11:25
投稿者名:匿名
Eメール:
URL :
タイトル:
Re: プロセスの終了
> hProcess = OpenProcess(PROCESS_ALL_ACCESS, False, 1400)
> ret = SendMessage(hProcess, WM_CLOSE, 0&, 0&)

プロセスID( OpenProcess の戻り値)と
ウィンドウハンドル( SendMessage の第一引数)は
別物です。

投稿時間:2003/09/09(Tue) 11:35
投稿者名:おと
URL :
タイトル:
Re^2: プロセスの終了
> > hProcess = OpenProcess(PROCESS_ALL_ACCESS, False, 1400)
> > ret = SendMessage(hProcess, WM_CLOSE, 0&, 0&)
>
> プロセスID( OpenProcess の戻り値)と
> ウィンドウハンドル( SendMessage の第一引数)は
> 別物です。

レス有難うございます。

プロセスIDかEXE名称から、ウィンドウハンドルを取得したいのですが
どうしたら良いのでしょうか?

投稿時間:2003/09/09(Tue) 11:32
投稿者名:花ちゃん
Eメール:
URL :
タイトル:
Re: プロセスの終了
> hProcess = OpenProcess(PROCESS_ALL_ACCESS, False, 1400)
> ret = SendMessage(hProcess, WM_CLOSE, 0&, 0&)



TerminateProcess APIを使って下記のようにすればOKかと思います。
TerminateProcess APIについてはWEBで検索して調べて下さい。

  'プロセスオブジェクトのハンドルを取得
  hProcess = OpenProcess(PROCESS_ALL_ACCESS, True, ProcessID)
  'プロセスを強制終了する
  Call TerminateProcess(hProcess, 0&)


TaskIDの場合は下記になります。

  'プロセスオブジェクトのハンドルを取得
  hProcess = OpenProcess(PROCESS_ALL_ACCESS, True, TaskID)
  'プロセスを強制終了する
  Call TerminateProcess(hProcess, 0&)

投稿時間:2003/09/09(Tue) 11:42
投稿者名:おと
URL :
タイトル:
Re^2: プロセスの終了
> > hProcess = OpenProcess(PROCESS_ALL_ACCESS, False, 1400)
> > ret = SendMessage(hProcess, WM_CLOSE, 0&, 0&)
>
>
>
> TerminateProcess APIを使って下記のようにすればOKかと思います。
> TerminateProcess APIについてはWEBで検索して調べて下さい。
>
>   'プロセスオブジェクトのハンドルを取得
>   hProcess = OpenProcess(PROCESS_ALL_ACCESS, True, ProcessID)
>   'プロセスを強制終了する
>   Call TerminateProcess(hProcess, 0&)
>
>
> TaskIDの場合は下記になります。
>
>   'プロセスオブジェクトのハンドルを取得
>   hProcess = OpenProcess(PROCESS_ALL_ACCESS, True, TaskID)
>   'プロセスを強制終了する
>   Call TerminateProcess(hProcess, 0&)

管理人様、有難うございます。
申し訳ありませんが、強制終了はしたく有りません。

プロセスIDかEXE名称から、ウィンドウハンドルを取得したいのですが
どうしたら良いのでしょうか?

投稿時間:2003/09/09(Tue) 11:50
投稿者名:nanashi
Eメール:
URL :
タイトル:
Re^3: プロセスの終了
> プロセスIDかEXE名称から、ウィンドウハンドルを取得したいのですが
> どうしたら良いのでしょうか?

googleで「プロセスIDからウィンドウハンドルを取得する」で検索したら一番最初に出てきたけど。

http://www.bekkoame.ne.jp/~ilgg/VBMain/VB/Process/CreateProcess.html

投稿時間:2003/09/09(Tue) 12:27
投稿者名:おと
URL :
タイトル:
解決しました。
> > プロセスIDかEXE名称から、ウィンドウハンドルを取得したいのですが
> > どうしたら良いのでしょうか?
>
> googleで「プロセスIDからウィンドウハンドルを取得する」で検索したら一番最初に出てきたけど。
>
> http://www.bekkoame.ne.jp/~ilgg/VBMain/VB/Process/CreateProcess.html


TerminateProcessで強制終了することにしました。
皆様、有難うございました。