我是C++编程的新手。
我需要使用教程中提供的头文件和解决方案文件来创建DLL。我从here遵循了基本步骤,但是在解决方案文件中出现以下错误:
L111!CreateProcess(L".\\phreeqc\\phreeqc.exe",
L112TEXT(".\\phreeqc\\phreeqc.exe .\\phreeqc\\phreeqc_input.txt .\\phreeqc\\phreeqc_input.out .\\phreeqc\\wateq4f_plus.dat")
错误:
L111
L112
我了解以上代码行中的细节对你们中的许多人没有多大意义,但我希望有人至少可以理解C++错误并在此提供帮助。
最佳答案
Unicode版本的CreateProcess
(这是一个映射到CreateProcessW
的宏)要求lpCommandLine
参数使用可写的字符串,而字符串文字是const
。因此,您不能直接为该参数传递字符串文字。
相反,您可以这样更改代码:
WCHAR lpCommandLine [] = L"...";
BOOL ok = CreateProcess (L"your_application_name_here", lpCommandLine, ...);
文档here关于c++ - 生成DLL时发生C++错误:const wchar_t *类型的参数与LPWSTR类型的参数不兼容,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/64001918/