Запуск процесса, когда целевой exe отображает графический интерфейс и модальные диалоги - PullRequest
2 голосов
/ 24 января 2012

У меня есть приложение, которое я хотел бы вызвать из C #, используя что-то вроде:

Process process = new Process();
process.StartInfo.FileName = exe;
process.StartInfo.Arguments = args;
process.StartInfo.CreateNoWindow = true;
process.StartInfo.WindowStyle = ProcessWindowStyle.Hidden;
process.ErrorDataReceived += new DataReceivedEventHandler(ErrorDataHandler);
process.OutputDataReceived += new DataReceivedEventHandler(OutputDataHandler);
process.StartInfo.UseShellExecute = false;
process.StartInfo.RedirectStandardError = true;
process.StartInfo.RedirectStandardOutput = true;
process.Start();

Я заранее знаю, что вызываемое приложение имеет графический интерфейс и может вызывать диалоговые окна модели.То, как я вызываю приложение, графический интерфейс никогда не понадобится и будет работать до конца.В конце появляется диалоговое окно модели, в котором пользователь спрашивает, хотят ли они закрыть графический интерфейс (поскольку он был запущен для автоматического запуска).

Есть ли способ вызвать приложение из c #, чтобы

a) Модальные диалоговые окна игнорируются?
b) Графический интерфейс фактически не отображается?

В конечном счете, я хочу запустить внешнее приложение без прерывания, прежде чем оно вернет управление моему приложению.

РЕДАКТИРОВАТЬ: Дополнительные пояснения.У меня нет стороннего приложения, поэтому я не контролирую его поведение.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...