системный API не работает в exe при вызове из другого exe или командного файла - PullRequest
0 голосов
/ 21 апреля 2020

У меня есть exe, давайте назовем его AB C .exe. Существует системный API для запуска командного файла внутри AB C .exe.

....
int ret = system("C:\\Test.bat");
if(ret == -1)
   printf("The system API failed");

printf("The ret value is = %d",ret);

....

Когда AB C .exe выполняется автономно, файл Test.bat выполняется правильно. Но когда AB C .exe запускается через другой пакетный файл или другое приложение, Test.bat не запускается, и системный API возвращает 1. Я не уверен, что означает здесь возвращаемое значение 1.

Обратите внимание, что приведенный выше сценарий хорошо работает в Win7, но не в Win-10. И все было открыто с правами администратора.

Пожалуйста, помогите мне в решении вышеуказанного запроса.

Обновление: системный вызов также не выполняется с помощью команды "dir". Я пробовал с другими командами, такими как "ipconfig", "winver", они работают нормально.

Спасибо.

...