親プロセスAから、『実行時にウィンドウを作成しない設定で起動した子プロセスが、
シェル上で孫プロセスを起動している』という状況で、
子や孫にあたるプロセスを終了させようとしております。
単純に子だけであれば System:: Diagnostics:: Process:: Kill() を使えば良いのですが、
孫が起動しているタイミングですと、そのまま孫が残ってしまいます。
#System:: Diagnostics:: Process:: CloseMainWindow() を使用できれば良いのですが、
#実行時にウィンドウを極力作成したくないため、他の方法を探しております。
そこで、プロセスリストを取得して各プロセスの親探しをしてはどうか検討しております。
開発環境 VC++ 2005 Express SP1
実行環境 Windows2000、 WindowsXP
ご教授いただきたい点は下記2点です。
・上記環境にて、プロセスの親探しは可能でしょうか? また、その方法は?
・よりスマートな方法はありますでしょうか?
大変恐縮ですが、ご教授いただければ幸いです。