我正在尝试使用以下代码获取当前活动窗口名称:
HWND winHandle = GetActiveWindow();
wchar_t buffer[512] = L"";
int getT = GetWindowText(winHandle, (LPTSTR) buffer, 511);
当在程序窗口中使用时,我正确得到窗口名称,否则,我收到错误1400.可能是什么问题?
由于
答案 0 :(得分:1)
根据Microsoft's documentation,错误1400为ERROR_INVALID_WINDOW_HANDLE
。这意味着将无效的HWND传递给GetWindowText。
向后工作,这意味着GetActiveWindow
没有返回有效句柄,可能是NULL。根据对documentation for GetActiveWindow
的评论,当活动窗口不属于当前应用程序或线程时,会发生这种情况。