У меня есть приложение, которое я хотел бы вызвать из 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) Графический интерфейс фактически не отображается?
В конечном счете, я хочу запустить внешнее приложение без прерывания, прежде чем оно вернет управление моему приложению.
РЕДАКТИРОВАТЬ: Дополнительные пояснения.У меня нет стороннего приложения, поэтому я не контролирую его поведение.