C++ ';DWORD CHackProcess::GetModuleNamePointer(LPSTR,DWORD)和#x27;:无法将参数1从';const char[11]';至';LPSTR&x27;

C++ ';DWORD CHackProcess::GetModuleNamePointer(LPSTR,DWORD)和#x27;:无法将参数1从';const char[11]';至';LPSTR&x27;,c++,visual-c++,C++,Visual C++,我已经在这个网站上搜索了一个答案,但上面的答案对我来说并不适用,我不断地得到这个错误。我最近(不确定是否成功)将没有错误的项目从我的台式机导入到我的新笔记本电脑。每当我尝试运行时,都会在多个文件中出现此错误,仅以一个文件为例: 错误C2664:'DWORD CHackProcess::GetModuleNamePainter(LPSTR,DWORD)':无法将参数1从'const char[11]'转换为'LPSTR' 这是在这些方面: while (__dwordClient == 0x0)

我已经在这个网站上搜索了一个答案,但上面的答案对我来说并不适用,我不断地得到这个错误。我最近(不确定是否成功)将没有错误的项目从我的台式机导入到我的新笔记本电脑。每当我尝试运行时,都会在多个文件中出现此错误,仅以一个文件为例:

错误C2664:'DWORD CHackProcess::GetModuleNamePainter(LPSTR,DWORD)':无法将参数1从'const char[11]'转换为'LPSTR'

这是在这些方面:

while (__dwordClient == 0x0) __dwordClient = GetModuleNamePointer("client.dll", __gameProcess.th32ProcessID);

while (__dwordEngine == 0x0) __dwordEngine = GetModuleNamePointer("engine.dll"6, __gameProcess.th32ProcessID);

while (__dwordVGui == 0x0) __dwordVGui = GetModuleNamePointer("vguimatsurface.dll", __gameProcess.th32ProcessID);
说明了
LPSTR
的以下定义:

typedef char*PSTR,*LPSTR

这意味着它是一个非
const
表达式。您传递的字符串是常量

您只需传递一个非常量字符串作为第一个参数

编辑:

它可以翻译为以下内容:

char engineModuleName[] = "engine.dll";
GetModuleNamePointer(engineModuleName, __gameProcess.th32ProcessID);

另外,假设你从中得到了这个函数,我希望你不是打算在网上作弊……不,不是在网上,只是学习。当你说我必须传递一个非常量表达式时,这看起来像什么?@Panda但是如果它实际上没有以任何方式改变char数组,那么它仍然是一个奇怪的函数定义。到目前为止,这是有效的,但我有更多的错误,基本上是一样的。我会试着在你之前的帮助下解决这些问题。如果我再次需要你,我会给你回电话的。谢谢你,你是个救命恩人。@Panda你在用不同的编译器吗?这可能是编译器隐式地将其转换为与我的答案相同的东西。请阅读-总结是,这不是一个理想的方式来解决志愿者,可能会适得其反获得答案。请不要将此添加到您的问题中。