Пакетный файл, запущенный в exe, не работает - PullRequest
1 голос
/ 26 октября 2011

Хорошо, поэтому у меня есть исполняемый файл, который запускает мой пакетный файл, а затем пакетный файл должен создать источник данных ODBC для моего сервера SQL. Если я запускаю пакетный файл сам по себе, он отлично работает и создает источник данных, но когда я запускаю его через свой exe-файл, он не возвращает ошибок, но не создает источник данных.

весь мой exe-код

#include <windows.h>
#include <iostream>
#include <dos.h>
#include <conio.h>

using namespace std;


int main ( int argc, char *argv[] )
{

cout << system("find2.bat");
system("PAUSE");
return 0;
 }

и моя пакетная команда

ODBCCONF.exe CONFIGSYSDSN "SQL Server" "DSN=test_DSN | Description=test Data Source |      SERVER=(local) | Trusted_Connection=Yes" 

Я также пытался вывести любые ошибки из командного файла, но он просто создал пустой текстовый файл, поэтому я не думаю, что ошибок. Так у кого-нибудь есть идеи, что может быть причиной этого?

Ответы [ 2 ]

2 голосов
/ 26 октября 2011

Вы уверены, что пакетный файл запущен?Поскольку вы не строите абсолютный путь, я думаю, он не найден.

0 голосов
/ 26 октября 2011

Вам нужно изменить вызов в соответствии с этим:

system("cmd /c C:\\path\\to\\find2.bat");
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...