gpt4 book ai didi

hwnd - FindWindow() 找不到我的窗口 [C++]

转载 作者:行者123 更新时间:2023-12-02 03:46:40 29 4
gpt4 key购买 nike

这不是一个复杂的问题。我无法找到属于 iTunes 的句柄。但是虽然 iTunes 在后台运行,但它一直告诉我找不到该窗口。所以我继续检查我是否错过了输入窗口名称,但是 spy ++向我指出我使用了正确的窗口名称和类名称(见下文)。我确信这是一个小错误,但我似乎找不到它。有人有见解吗?提前致谢。

        HWND hwnd;
hwnd = FindWindow((LPCWSTR)"iTunes",(LPCWSTR)"iTunes");
if (hwnd != 0){
cout << "WINDOW FOUND" << endl;
} else {
cout << "WINDOW NOT FOUND" << endl;
cout << hwnd << endl;
}

最佳答案

您正在将 ANSI 字符串与 FindWindow 的 Unicode 版本一起使用。

许多Win32函数实际上是一对函数和一个宏。例如,FindWindow 的定义大致如下:

HWND WINAPI FindWindowA(LPCSTR lpClassName, LPCSTR lpWindowName);
HWND WINAPI FindWindowW(LPCWSTR lpClassName, LPCWSTR lpWindowName);

#if (UNICODE)
# define FindWindow FindWindowW
#else
# define FindWindow FindWindowA
#endif

尝试显式调用 FindWindowA 或使用如下宽字符串:

HWND hwnd = FindWindow(L"iTunes", L"iTunes");

关于hwnd - FindWindow() 找不到我的窗口 [C++],我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10857078/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com