|
今度はプロセス名で画面のフィルタリングしたいと思い、 このようなコードを作りました。
IntPtr ptr = WindowFromPoint(Cursor.Position); int nProcessID; GetWindowThreadProcessId(ptr, out nProcessID); Process hProcess = System.Diagnostics.Process.GetProcessById(nProcessID); MessageBox.Show(nProcessID.ToString());
ところが、この処理を複数のアプリに別々に入れて実行をしたところ、 あるプログラムではカーソルが指しているウインドウで変わりますが、 あるプログラムでは表示されるプロセスが自分自身のプロセスIDで固定になってしまいます。 どこの記述に原因があるのでしょうか。
今はプロセス名をテストで表示しているだけなのですが、 これを元にプロセスIDからプロセス名を割り出して表示のフィルタリングをするつもりです。
|