我使用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文件中
答案 0 :(得分:2)
您需要仔细阅读CreateProcess()上的文档。第二个参数标记为inout
,意味着函数将(在这种情况下,可以)修改指向的值。
如果你要按照你在评论中提到的方式进行演员表示,最好不仅要添加注释,还要明确使用ANSI函数(因此调用CreateProcessA()
)以防万一。
此外,Qt有自己的创建流程的方式。您可以参考QProcess文档。