如果我只知道窗口标题和类名的一部分,如何获得窗口的描述符?
问问题
3072 次
2 回答
5
FindWindow()
需要完整的标题。使用EnumWindows()
或GetWindow()
在循环中枚举所有可用窗口,在每个窗口上调用GetClassName()
和GetWindowText()
并将值与搜索条件进行比较,直到找到匹配项。
于 2011-10-30T02:47:27.567 回答
2
像这样的东西:
BOOL CALLBACK EnumWindowsProc( HWND hwnd, LPARAM lParam ) {
wchar_t lpClassName[128] = {0};
MYSTRUCT* MS_INFO = ( MYSTRUCT* )lParam;
GetClassName( hwnd, lpClassName, _countof( lpClassName ) );
if( strstr( lpClassName, MS_INFO -> lpClassName ) ) {
wchar_t lpWindowName[128] = {0};
GetWindowText( hwnd, lpWindowName, _countof( lpWindowName ) );
if( strstr( lpWindowName, MS_INFO -> lpWindowName ) ) {
...
}
}
}
于 2011-10-30T17:47:49.987 回答