如何读取没有标题栏和窗口名的窗口句柄。
这样的窗口怎么读取句柄?用enumwindow可以枚举出来(在结果里一个一个的对着找的),但是怎么判断是不是自己要找的窗口的句柄? up{:10_266:} upup{:10_266:} 子窗口控件也是有标题的 . 这个的ClassName应该是 "Button" .
尝试用一下
HWND FindWindowEx(
HWND hwndParent, // handle to parent window
HWND hwndChildAfter,// handle to a child window
LPCTSTR lpszClass, // pointer to class name
LPCTSTR lpszWindow // pointer to window name
);
俞晨曦 发表于 2017-6-20 19:48
子窗口控件也是有标题的 . 这个的ClassName应该是 "Button" .
尝试用一下
我是要找窗口句柄,而不是BUTTON控件的句柄。 GetParent
The GetParent function retrieves a handle to the specified child window's parent window.
HWND GetParent(
HWND hWnd // handle to child window
);
通过Button的句柄调用GetParent获取主窗口的句柄 .
不一定能成功 #include <stdio.h>
#include <Windows.h>
BOOL CALLBACK EnumWindowsProc(
_In_ HWND hwnd,
_In_ LPARAM lParam
)
{
HWND hwnd1;
hwnd1 = FindWindowExA(hwnd, 0, "Button", "Close");
if (hwnd1)
{
printf("当前枚举句柄:%x\t控件句柄:%x\t父窗口句柄:%x\n", hwnd, hwnd1, GetParent(hwnd1));
}
return 1;
}
int main()
{
EnumWindows(EnumWindowsProc, NULL);
return 0;
}
页:
[1]