В комментариях вы добавляете описания проблемы в комментарии, которые было бы полезно знать с самого начала. Причина, по которой вы видите, что процесс запущен, но окно не открывается, заключается в изменениях модели безопасности, которые были внесены в службы Windows в Windows Vista и более поздних версиях. Вы еще не упомянули об этом, но у меня есть сильное подозрение, что вы пытаетесь запустить это под одной из этих операционных систем. Настоящая проблема не в запуске процесса, а в отображении пользовательского интерфейса.
То, что вы пытаетесь выполнить, называется "Интерактивная служба" , которая позволяет напрямую взаимодействовать с пользователем и рабочим столом (т. Е. Показывать окно или диалоговое окно). ).
Если вы используете Windows XP (и ваша служба будет работать только под когда-либо под Windows XP), вы можете следовать инструкциям в этой статье, чтобы запустить службу в интерактивном режиме, который позволит вам отображать окно приложения Adobe Acrobat, как вы ожидаете. Однако, как также указывается в этой документации, эта функция не работает в Windows Vista и более поздних версиях:
Важно Службы не могут напрямую взаимодействовать с пользователем начиная с Windows Vista.
Поэтому методы, упомянутые в разделе «Использование интерактивного сервиса»
не должен использоваться в новом коде.
Более конкретно, в этих версиях были внесены изменения в работу служб и приложений. Сервисы теперь изолированы системой в сеансе 0, а приложения запускаются в других сеансах. Это предназначено для изоляции сервисов от атак, которые происходят в коде приложения. Следовательно, ни один пользовательский интерфейс, отображаемый службой, никогда не будет виден любому пользователю системы, включая простое окно сообщения. Вы можете прочитать официальный документ, который объясняет эти изменения более подробно здесь . Если вы более визуальный человек, обратитесь к следующей диаграмме, иллюстрирующей новую модель, уделяя особое внимание разделительным линиям:
В результате вы можете использовать эту лазейку, если вы нацеливаетесь на эти версии или вам когда-нибудь понадобится нацелиться на эти версии. Я говорю «лазейка», потому что, как я уже упоминал в комментарии, суть в том, что Службы Windows не предназначены для того, чтобы быть интерактивными . То, что вы пытаетесь сделать здесь, противоречит цели и дизайну сервиса. Раньше это не рекомендовалось, и теперь оно совершенно не работает. Если вам нужна эта конкретная функциональность, вы должны создать приложение другого типа. Windows Forms и WPF предназначены для приложений пользовательского режима, и оба могут запускать процессы и открывать новые окна по мере необходимости. Я настоятельно рекомендую вместо этого перейти на этот стиль приложения.