ExecCmd
Запустить сторонний исполняемый модуль с аргументами и получить из него результаты в текстовую строку.
Вызов:
int ierr = shell_func("ExecCmd", string exenamewithargs, string sresult);
Здесь:
exenamewithargs - имя стороннего программного модуля с аргументами.
Если в пути или имени или аргументах есть пробелы - то пишется в кавычках.
sresult - содержимое консольного вывода этого модуля.
Возвращаемое значение:
-1 - ошибка.
0 - успешное выполнение модуля;
Пример.
Выполнить сторонний программный модуль "TSChild Process.exe" с аргументами "Аргумент 1" и "Аргумент 2" и вывести в окно сообщений.
int main()
{
string sresult;
int ires = shell_func("ExecCmd", "\"C:\\source\\TSChild Process.exe\" \"Аргумент 1\" \"Аргумент 2\"", sresult);
coutvar << sresult;
coutvar << ires;
}
Результат выполнения скрипта в окне сообщений:
Текст исполняемого модуля "TSChild Process.exe" на языке Си++
//************************************************
// Этот exe модуль запускается и пишет на консоли
//************************************************
#include <iostream>
using namespace std;
int main(int argc, char* argv[])
{
if (argc == 2)
{
cout << "Hello World! Привет! " << argv[1] << "\n";
}
else if (argc == 3)
{
cout << "Hello World! Привет! " << argv[1] << " " << argv[2] << "\n";
}
else
{
cout << "Мало аргументов\n";
}
return 1;
}
//***********************************************