системный вызов окон C с пробелами в команде

Я не могу сделать системные вызовы с пробелами на имена и параметры. Например:

system("c:\\program files\\something\\example.exe c:\\my files\\example.txt");

Я попытался выйти каждым способом, которым я знаю, как, и НИЧТО не работает. Я попробовал:

system("\"c:\\program files\\something\\example.exe\" \"c:\\my files\\example.txt\"");

и

system("c:\\program^ files\\something\\example.exe c:\\my^ files\\example.txt");

Никакая работа. Я все еще добираюсь, 'c:\program' не является recongnised внутренней или внешней командой

Это действительно сводит меня с ума... Я должен назвать и передать параметры, которые имеют пробелы в них. Я не могу использовать короткую нотацию по причинам, в которые я не войду.

Я попробовал 'кавычками вместо "кавычек, все еще не работает. Я попытался поместить кавычки вокруг всего этого и кавычки вокруг пробелов, и это не работает.

Кто-либо знает, как сделать это правильно?

13
задан myforwik 15 April 2010 в 03:34
поделиться

1 ответ

Изменить: Хорошо, разобрался, перейдя в вызов system () : вам нужен дополнительный набор кавычек вокруг всего этого из-за того, что он внутренне вызывает cmd / c yourinput

Так что это работает для меня:

system("\"\"c:\\program files\\internet explorer\\iexplore.exe\" \"www.stackoverflow.com\"\"");

Немного беспорядка, не так ли?

{{1 }}
28
ответ дан 1 December 2019 в 20:56
поделиться
Другие вопросы по тегам:

Похожие вопросы: