выполнить командный файл из программы - PullRequest
2 голосов
/ 01 февраля 2010

Я хотел бы выполнить командный файл из программы (exe-файл).Я обычно создаю командный файл во время выполнения программы (exe-файла).и будет execl ("START", "", NULL);

функция вызывает пакетный файл, но, к сожалению, новое командное окно появляется, поскольку функция execl является процессом START и анализируется как «cmd.exe / k ".

Можете ли вы поделиться самым простым способом вызова функции, которая выполняет пакетный файл в фоновом режиме, если это возможно, поделитесь фрагментом кода.

1 Ответ

1 голос
/ 01 февраля 2010

Не используйте start, но cmd /c.

ETA: Как отмечает Крис Джестер-Янг в комментарии, это будет выглядеть как

execlp("cmd", "/c", batchfile, static_cast<char*>(0))

в вашем коде.

ETA 2: Похоже, вам даже не нужно cmd там. Достаточно просто командного файла как команды. Поскольку start работает, а start является встроенной командой cmd.exe, должен быть экземпляром cmd, работающим для вашего первоначального вызова. Так что просто запустите командный файл, как если бы это была программа, этого должно быть достаточно.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...