wcscmp参数随机停止工作?

时间:2017-09-08 06:59:17

标签: c++ winapi

我用这个:

const wchar_t TARGET_NAME[] = L"ac_client.exe";
if (!wcscmp(pe32.szExeFile, TARGET_NAME))

找到一个进程并比较名称以匹配它们,pe32是PROCESSENTRY32。它曾经工作,但随机它只是无缘无故地停止。它现在在pe32下面用红色下划线表示"类型" CHAR *"与" const wchar_t *"""

类型的参数不兼容

我真的不明白。这有什么别的吗?我甚至做过

#include <wchar.h>

以防万一。

1 个答案:

答案 0 :(得分:1)

如上所述,如果定义了PROCESSENTRY32WPROCESSENTRY32结构会扩展为UNICODE,否则会扩展为PROCESSENTRY32A更改了预处理程序符号。该错误不只是弹出“随机”。如果您希望编译代码而不考虑编译器环境,请显式使用Unicode名称(PROCESSENTRY32WProcess32FirstW)。