2012-01-08 2 views
-2

У меня есть созданный сервис окна и установлен успешно. Я включил exe-файл в службу, но он не запускает .exe.Запуск программы exe из оконных служб

Protected Overrides Sub OnStart(ByVal args() As String) 
System.Diagnostics.Process.Start("C:\Users\Dr.Fazan\Desktop\Debug\Macro Recording System.exe") 
+2

Как вы узнали, что ваш файл exe не запускается? Поскольку это служба Windows, ваш exe-файл не будет отображаться на вашем рабочем столе, он будет запущен под системной учетной записью, и вы не увидите ее графически. Это то, что вас смущает, или вы как-то уверены, что это никогда не начинается? – Numenor

+0

Я не знаю, что exe запущен или нет –

+0

Что показывает Process Explorer (или диспетчер задач)? Какую деятельность вы видите в Process Monitor? – Richard

ответ

1

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

Возможно, вы получаете исключение при попытке выполнить Start() свой процесс.

Я думаю, что ваша служба не хватает прав для запуска, что файл .EXE

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

0

Служба Windows обычно не имеет права запускать новый процесс по соображениям безопасности. Вам необходимо будет предоставить эти права в первую очередь.

Один из возможных способов сделать это - включить службу журнала как администратор. на службе в services.msc> Свойства> Вход> Это a ccount. Я знаю только этот метод, но он должен работать только для тестирования и никогда не должен использоваться в производстве из-за открытого отверстия безопасности.