0

我使用 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 文件中

4

1 回答 1

2

您需要仔细阅读有关CreateProcess()的文档。第二个参数被标记为inout,这意味着函数将(在这种情况下,可以)修改指向的值。

如果您要按照您在评论中提到的方式进行转换,最好不仅添加评论,而且还可能显式使用 ANSI 函数(因此调用CreateProcessA())以防万一。

此外,Qt 有自己的创建进程的方式。您可以参考QProcess文档。

于 2014-02-22T18:01:16.697 回答