回答編集履歴
3
追記時の日時修正
test
CHANGED
@@ -72,7 +72,7 @@
|
|
72
72
|
|
73
73
|
---
|
74
74
|
|
75
|
-
**追記しました:(2019/04/2
|
75
|
+
**追記しました:(2019/04/20 14:28)**
|
76
76
|
|
77
77
|
|
78
78
|
|
2
ReaotOSのタスクマネージャーに関する記述を追記
test
CHANGED
@@ -67,3 +67,27 @@
|
|
67
67
|
|
68
68
|
|
69
69
|
なお、ウィンドウの解析に便利なツール Spy++は Visual Studio 2010 Professional版には付属していますが、質問者さんご利用のExpress版に付属しているかは分かりません。
|
70
|
+
|
71
|
+
|
72
|
+
|
73
|
+
---
|
74
|
+
|
75
|
+
**追記しました:(2019/04/29 14:28)**
|
76
|
+
|
77
|
+
|
78
|
+
|
79
|
+
**ReactOS**と言うWindows互換を目指しクローンOSがあります。
|
80
|
+
|
81
|
+
[Wikipedia - ReactOS](https://ja.wikipedia.org/wiki/ReactOS)
|
82
|
+
|
83
|
+
|
84
|
+
|
85
|
+
そのタスクマネージャーのソースが参考になるかもしれません。
|
86
|
+
|
87
|
+
[github - reactos / taskmgr](https://github.com/reactos/reactos/blob/master/base/applications/taskmgr/applpage.c)
|
88
|
+
|
89
|
+
|
90
|
+
|
91
|
+
このソース中の`EnumWindowsProc`関数の中で、
|
92
|
+
|
93
|
+
`/* Check and see if this is a top-level app window */`と言うコメント部分があり、ここでタスクマネージャーに表示しないものを選り分けています。Windows 7やWindows 10と同じ挙動とは限りませんが、先の私のコード例より、親ウィンドウやオーナーウィンドウ、拡張ウィンドウスタイルを意識するなど、選別条件が増えています。こちらのコードを参考にすること、お望みの挙動になるかもしれません。
|
1
表記を修正
test
CHANGED
@@ -62,7 +62,7 @@
|
|
62
62
|
|
63
63
|
|
64
64
|
|
65
|
-
ウィンドウタイトルは`SetWindowText`を使って動的に変えることもでき、それで考えるとタイトル
|
65
|
+
ウィンドウのタイトルバーに表示されているタイトル文字列は、`SetWindowText`を使って動的に変えることもでき、それで考えるとタイトルだけで判断するのは不十分とも言えます。厳密にするのであれば、タイトルだけでなく、ウィンドウクラス名や必要に応じてウィンドウの付帯情報(ウィンドウスタイルや親子関係)まで対象にすれば判別は可能だと思います。(質問者さんのコードでは、`GetClassName`でクラス名を取得していますね)
|
66
66
|
|
67
67
|
|
68
68
|
|