【发布时间】:2011-06-03 23:48:45
【问题描述】:
我将如何在我的主程序中找到窗口句柄...
在 C# 中
我运行 notepad.exe 然后在其中输入一些内容,然后使用 SPY++ (0x111111) 找到主窗口句柄,然后
[DllImport("user32.dll", SetLastError = true, CharSet = CharSet.Auto)]
internal static extern int GetWindowText(IntPtr hWnd, [Out] StringBuilder lpString, int nMaxCount);
.
.
.
GetWindowText((IntPtr)(0x111111), str, 1024);
这段代码运行良好,并返回主窗口的标题。
: : 但是当我做同样的事情来查找 notepad.exe 的子项的标题时,它只是将 str 设置为空。 spy++ 告诉我孩子的标题是有价值的。
【问题讨论】:
-
哪个孩子???范围可以从“文件”菜单选项到状态栏或介于两者之间的任何内容!
-
我在文本区写了一些东西。然后使用 spy++ 在标题中找到带有文本的句柄,然后在我的代码中使用该句柄。
-
您确实意识到句柄 (
hWnd) 并不总是相同的吗?在应用程序中硬编码值是没有用的。