system("C:\\server.exe ine >> request.xml");
Эта программа принимает ine как параметр и записывает вывод в файл request.xml. Программа успешно записывает вывод в файл, но не закрывает файл. Я пытался
exit(0)
но он не выполняется после системы (...)
Похоже, что программа повешена, и мне нужно закрыть ее вручную.
Как я могу закрыть программу прагматично?
Не используйте system
. Кажется, что процесс, который вы вызываете (C:\server.exe
), не выходит после его запуска. system
будет просто зависать, пока процесс не завершится.
Вместо этого рассмотрите возможность использования CreateProcess
и TerminateProcess
для более тщательного контроля жизненного цикла вашей программы. В этом случае вам нужно будет указать выходной файл вручную через STARTUPINFO.hStdOutput или вызвать cmd.exe
с нужной командной строкой.
Ваша проблема в C:\server.exe
. Он не выходит должным образом.
fclose( )
?