Я не уверен, как сформулировать этот вопрос, поэтому, пожалуйста, несите меня.Вызов Main() в другом .exe и нерест прикрепленного окна консоли
Я создаю песочницу для запуска .exes с различными привилегиями. В основном я строил пример в этой статье: https://msdn.microsoft.com/en-us/library/bb763046(v=vs.110).aspx
Перед тем как перепроектировать, я собираюсь упомянуть, мой проект имел тип вывода консольного приложения (Project-> Properties-> Application-> Output type), несмотря на то, что в основном это проект WPF. Это привело к тому, что окно консоли и мой графический интерфейс отображались при запуске программы.
При запуске консольного приложения В песочнице вывод будет записан в уже открытое окно консоли, а не для создания другого связанного с тестируемым .exe. Я пытаюсь избежать этого и предпочел бы, чтобы мой тип вывода оставался в виде приложения Windows, чтобы предотвратить открытие ненужного окна консоли.
Насколько я могу судить, этот вопрос вытекает из этой строки кода:
target.EntryPoint.Invoke(null, parameters);
Это запускает метод Main(string[] args)
в моем .exe испытуемой, однако он не порождает свою собственную консоль окно и ошибки следуют быстро. Есть ли способ создать консольное окно и прикрепить к нему порожденный процесс?
Спасибо, редактирует и вопросы приветствуются
P.S. Если тип вывода настроен на консольное приложение, другие типы вывода (например, формы и проекты wpf) загружают их соответствующие графические интерфейсы совершенно точно.
Процесс может иметь только одно окно консоли. Вам придётся приспособиться к этому в вашем дизайне. –