我想制作一个小型Qt应用程序,以便能够使用-login登录密码作为启动选项快速切换蒸汽帐户。问题是我无法使用我的Qt应用程序运行steam.exe和所需的参数。 这是一个代码:
QString path("C:\\Program Files (x86)\\Steam");
QStringList arg;
arg << "-launch 123 123";
QString item = arg.takeAt(0);
QString res("Steam.exe");
QString program = "\"" + path + "/" + res + "\"";
QProcess* process = new QProcess();
process->startDetached(program, arg);
答案 0 :(得分:5)
您的问题中的代码存在3个问题:
QString item = arg.takeAt(0);
在这里
takeAt(0)
从arg
列表中删除您的参数。因此,当您将arg
传递给startDetached
时,它已经是空的。
您需要使用-login
而不是-launch
作为命令行参数。请参阅Steam support documentation。
您必须将用户名和密码作为单独的参数传递,因此QStringList arg = QStringList() << "-login" << "123" << "123";
代替QStringList arg; arg << "-launch 123 123";
。
答案 1 :(得分:0)
我的解决方案是:
QStringList arg;
arg << "-login";
arg << "123";
arg << "123";
而不是:
arg << "-launch 123 123";