Форум программистов, компьютерный форум CyberForum.ru

Исполнение .cmd через вызов CreateProcess() - C++

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 12, средняя оценка - 4.92
f0stergas
Сообщений: n/a
14.08.2012, 15:01     Исполнение .cmd через вызов CreateProcess() #1
Привет. Заранее извините, если написал не туда. Есть .cmd файл, который надо запустить ТОЛЬКО при помощи CreateProcess() (ShellExecute в моем случае не подходит) и передать ему параметры. Написан такой вот код:

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
LPSTR cmdArgs = "cmd.exe /K cmdfile.cmd firstparameter";
if (!CreateProcess(NULL,
        cmdArgs,
        NULL,
        NULL,
        TRUE,
        CREATE_NEW_CONSOLE,
        NULL,
        NULL,
        &si, &pi))
    {
        ErrorMessage("CreateProcess");
        getch();
        return;
    }
Все работает, но результат исполнения .cmd-файла такой, будто firstparameter ему не передавался. Подскажите, в чем может быть проблема, как в данном случае мне переадть параметр не для cmd.exe, а для моей .cmd. Спасибо
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
14.08.2012, 15:01     Исполнение .cmd через вызов CreateProcess()
Посмотрите здесь:

Вызов функций через таблицу прерываний C++
Запуск не через cmd C++
C++ Как запустить консольное приложение через CreateProcess и спрятать его окно?
C++ Запуск файла через cmd
Компиляция через cmd C++
не открывает файл через cmd C++
C++ Вызов GnuPlot через си прогу
Не запускает программу через cmd C++

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
nexen
187 / 180 / 3
Регистрация: 27.01.2012
Сообщений: 1,335
14.08.2012, 16:08     Исполнение .cmd через вызов CreateProcess() #2
f0stergas,
попробуй
C++
1
LPSTR cmdArgs = "cmd.exe //K cmdfile.cmd firstparameter"
По-моему два "//" нужно передавать, ибо "/" используется для табуляций, кареток и прочих системных символов
Yandex
Объявления
14.08.2012, 16:08     Исполнение .cmd через вызов CreateProcess()
Ответ Создать тему
Опции темы

Текущее время: 06:10. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru