Открытие командного файла (.bat) в программе на C? - PullRequest
4 голосов
/ 13 июля 2011

Как мне запустить пакетный файл (.bat) из моей программы на C? Я использовал

system("start /B omanam.bat");

но это не работает. Как сделать так, чтобы .bat открывался через C?

Ответы [ 2 ]

5 голосов
/ 13 июля 2011

Бросьте start. Это cmd.exe. Просто запустите system("omanam.bat");.

0 голосов
/ 13 июля 2011

Если ваша исполняемая программа C и командный файл находятся в одном каталоге, то

system("batchfilename.bat arg1 arg2");

где arg1 и arg2 - аргументы для этого пакетного файла.


Если командный файл находится в другом каталоге

 system("f:\\bin\\batchfilename.bat arg1 arg2");

где arg1 и arg2 - аргументы для этого пакетного файла.


код C:

#include <stdio.h>
#include <stdlib.h>

int main()
{

  printf("Calling batch file doit.bat\n");
  system("doit Hello. theansweris: 42");
  printf("Press \'Enter\' to exit the program\n");
  getchar();
  return 0;
}

Код пакетного файла:

@rem This is the batch file doit.bat
@echo.
@echo.
@echo.
@echo In doit.bat:
@echo.
@echo.
@echo.
@echo argument #1 is ^"%1^"
@echo argument #2 is ^"%2^"
@echo argument #3 is ^"%3^"
@echo.
@echo.
@echo Tttttthat's all, folks!
@echo.
@echo.
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...