Мне надо: Код (Text): int main(){ system("my_program"); return 0; } Чтоб по клику мышей по значку этого приложения запускалось то, которое указано в system(). Дрогая прога запускается, только если родительскую прогу запустить в консоли (через командную строку), а по обычному клику - запускается первая прога без второй. Почему?
device Если под win, то Код (Text): ... STARTUPINFO si; PROCESS_INFORMATION pi; ZeroMemory(&si, sizeof(si)); ZeroMemory(&pi, sizeof(pi)); si.cb = sizeof(si); si.dwFlags = STARTF_USESHOWWINDOW; si.wShowWindow = SW_HIDE; if (CreateProcess(NULL, lpCmdLine, NULL, NULL, FALSE, 0, NULL, NULL, &si, &pi)) { // WaitForSingleObject(pi.hProcess, INFINITE); CloseHandle(pi.hProcess); CloseHandle(pi.hThread); return 0; } ...
device Почему, сразу, не запускается?! Может запускается и закрывается. Поробуй вставить wait какой-нибудь.
twgt В отладчике - запуск в три такта. Сначала INIT, потом грузит кучу библиотек, потом - запуск внешней проги, потом - закрытие. И убивает порожденный процесс???
Скорее всего system не меняет директорию на текущую. Т.е. надо попробовать передать полный путь к my_program