我使用Qt Creator和以下代码:

CreateProcess(NULL,string("curl -F \"api_key=XXX\" -F \"filetype=mp3\" -F \"track=@"+execpath+"\\sound.mp3\" \"http://developer.echonest.com/api/v4/track/upload\"").c_str(), NULL, NULL, TRUE, CREATE_NO_WINDOW, NULL, NULL, &startupinfo, &procinfo); // Send sound.mp3 to be analyzed by Echonest

生成此问题:
invalid conversion from 'const char*' to 'LPSTR {aka char*}

怎么解决?
请注意,我已经定义了:
DEFINES -= UNICODE

在我的.pro文件中

最佳答案

您需要仔细阅读CreateProcess()上的文档。第二个参数标记为inout,这意味着函数将(在本例中,可以)修改指向的值。
如果要按照注释中提到的方式进行转换,最好不仅添加注释,而且可能显式地使用ANSI函数(从而调用CreateProcessA()),以防万一。
此外,Qt有自己的创建流程的方法。您可以参考QProcess文档。

关于c - 如何解决“从'const char *'到'LPSTR {aka char *}'的无效转换'[-fpermissive]“,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/21957973/

10-11 23:09
查看更多