int main()
{
system("start C:\\Program Files (x86)\\Steam\\Steam.exe\\");
cout << "Opening...\n";
return 0;
}
Когда он открывает CMD, в нем говорится: «Не удается найти C: \ Program». »C++ Execute .exe с пробелами в пути
int main()
{
system("start C:\\Program Files (x86)\\Steam\\Steam.exe\\");
cout << "Opening...\n";
return 0;
}
Когда он открывает CMD, в нем говорится: «Не удается найти C: \ Program». »C++ Execute .exe с пробелами в пути
Thete не нужно бежать с \
. Вы можете использовать необработанные строковые литералы. Как это.
system(R"(start "C:\Program Files (x86)\Steam\Steam.exe")");
или
system(R"(start C:\Program Files (x86)\Steam\Steam.exe)");
Не работает. – Kompakt
(Перенастройка ответ от комментария)
Поместите путь в строку внутренне:
system("start \"C:\\Program Files (x86)\\Steam\\Steam.exe\"");
Примечание: используйте \"
создать кавычку внутри строка.
'' start \ 'C: \\ Program Files (x86) \\ Steam \\ Steam.exe \ "" ' – AndyG
Голосование закрывается, однако, из-за этого, по существу, является типографская ошибка; OP не понимал, что пробелы будут указывать отдельные аргументы 'start' – AndyG
Спасибо за весь ваш ответ. Но я закончил это следующим образом: '_spawnl (P_WAIT," C: \\ Program Files (x86) \\ Steam \\ Steam.exe "," Arg1 "," Arg2 ", NULL);' – Kompakt