У меня есть progaram, который может быть, выполнил обоих как winform, или из командной строки. Если это вызывается из командной строки, я называю AttachConsole (-1) для присоединения для порождения консоли.
Однако после моих концов программы, пользователь должен совершить нападки, входят для возвращения стандартной командной строки ("c:\>"). существует ли способ избежать той потребности?
Спасибо. Я мог перенести его в командный файл, чтобы избежать, что проблема, но я хотел бы сделать это от своего exe.
Попробуйте добавить эту строку непосредственно перед выходом из exe...
System.Windows.Forms.SendKeys.SendWait("{ENTER}");
Немного халтуры, но это лучшее, что я смог найти, когда столкнулся с этой проблемой.
Попробуйте вызвать функцию FreeConsole перед выходом из исполняемого файла.
Хорошо, у меня нет решения, но похоже, что cmd.exe не ожидает запущенного процесса, тогда как в обычном консольном приложении cmd.exe ждет, пока приложение не завершится. Я не знаю, почему cmd.exe решает ждать или нет приложения, обычные приложения Windows Forms просто запускаются, а cmd.exe не ждет его выхода. Может, эта подсказка кого-нибудь подстегнет! А пока я копну немного глубже.
Wout