Я могу получить текущий тип запуска службы на удаленном компьютере, но не могу его изменить. Свойство ServiceController.StartType доступно только для чтения.
Imports System.ServiceProcess
Dim myController As ServiceController
myController = New ServiceController With {
.MachineName = "hostname",
.ServiceName = "servicename"
}
If .StartType.Equals(ServiceStartMode.Automatic) Then
txtStartTypeSDM1.Text = "AUTOMATIC"
End If
myController.Close()
Этому парню удалось расширить Класс ServiceController, который позволяет изменять StartUpType, но работает только локально. Новый класс принимает свойство .MachineName, но я думаю, что оно не работает, поскольку не может найти указанное имя службы.