Closed 1097906176 closed 5 months ago
pvz_toolkit\src\process.h(93): error C2664: “BOOL ReadProcessMemory(HANDLE,LPCVOID,LPVOID,SIZE_T,SIZE_T )”: 无法将参数 5 从“unsigned long ”转换为“SIZE_T *” pvz_toolkit\src\process.h(93): note: 与指向的类型无关;强制转换要求 reinterpret_cast、C 样式强制转换或函数样式强制转换 Windows Kits\10\include\10.0.19041.0\um\memoryapi.h(159): note: 参见“ReadProcessMemory”的声明 F:\gongcheng\pvzAuto\1.0.0.1051\pvz_toolkit\src\process.h(93): note: “ReadProcessMemory”: 函数声明必须可用,因为所有参数都不依赖于模板参数 pvz_toolkit\src\process.h(33): note: 此诊断出现在编译器生成的函数“T Pt::Process::ReadMemory(std::initializer_list)”中 \pvz_toolkit\src\process.h(49): note: 此诊断出现在编译器生成的函数“void Pt::Process::WriteMemory(std::array<_Ty,_Size>,std::initializer_list)”中 NMAKE : fatal error U1077: “E:\vs\VC\Tools\MSVC\14.29.30133\bin\HostX64\x64\cl.EXE”: 返回代码“0x2” Stop. 大佬报这些错,我是按照readme步骤编译的。是缺少了什么吗
在百度搜索报错信息可知是 32 位和 64 位的 size_t 定义不同导致的. 你开了 x64 编译环境, 改成 x86.
pvz_toolkit\src\process.h(93): error C2664: “BOOL ReadProcessMemory(HANDLE,LPCVOID,LPVOID,SIZE_T,SIZE_T )”: 无法将参数 5 从“unsigned long ”转换为“SIZE_T *” pvz_toolkit\src\process.h(93): note: 与指向的类型无关;强制转换要求 reinterpret_cast、C 样式强制转换或函数样式强制转换 Windows Kits\10\include\10.0.19041.0\um\memoryapi.h(159): note: 参见“ReadProcessMemory”的声明 F:\gongcheng\pvzAuto\1.0.0.1051\pvz_toolkit\src\process.h(93): note: “ReadProcessMemory”: 函数声明必须可用,因为所有参数都不依赖于模板参数 pvz_toolkit\src\process.h(33): note: 此诊断出现在编译器生成的函数“T Pt::Process::ReadMemory(std::initializer_list)”中
\pvz_toolkit\src\process.h(49): note: 此诊断出现在编译器生成的函数“void Pt::Process::WriteMemory(std::array<_Ty,_Size>,std::initializer_list)”中
NMAKE : fatal error U1077: “E:\vs\VC\Tools\MSVC\14.29.30133\bin\HostX64\x64\cl.EXE”: 返回代码“0x2”
Stop.
大佬报这些错,我是按照readme步骤编译的。是缺少了什么吗