Хорошо работает через wxExecute, но первый аргумент всегда равен названию приложения.
Code: Select all
wxExecute("test.exe 4 72 54", wxEXEC_ASYNC);
Пробовал делать через wxProcess::Open(), успехом не увенчался.
Code: Select all
wxExecute("test.exe 4 72 54", wxEXEC_ASYNC);
Code: Select all
::CreateProcess( "test.exe", "4 72 54", NULL, NULL, false, NORMAL_PRIORITY_CLASS, NULL, NULL, &StartInfo, &ProcInfo)
Code: Select all
int APIENTRY _tWinMain(HINSTANCE hInstance,
HINSTANCE hPrevInstance,
LPTSTR lpCmdLine,
int nCmdShow)
Code: Select all
STARTUPINFO StartInfo = { sizeof(StartInfo) };
PROCESS_INFORMATION ProcInfo;
TCHAR arguments[] = L"test.exe 3 4 5";
wchar_t command[] = L"test.exe";
wchar_t args[] = L"3 4 5";
wchar_t* params[] = { command, args, nullptr };
wxExecute(params);
::CreateProcess(L"test.exe", arguments, NULL, NULL, false,
NORMAL_PRIORITY_CLASS, NULL, NULL, &StartInfo, &ProcInfo);
Code: Select all
int APIENTRY wWinMain(_In_ HINSTANCE hInstance,
_In_opt_ HINSTANCE hPrevInstance,
_In_ LPWSTR lpCmdLine,
_In_ int nCmdShow)
{
MessageBox(NULL, lpCmdLine, NULL, 0);
return 0;
}