Я хотел бы удаленно запускать или останавливать службу Windows на другом компьютере, используя MSBuild.Для этого я написал такой скрипт:
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<Import Project="C:\Program Files (x86)\MSBuild\MSBuildCommunityTasks\MSBuild.Community.Tasks.Targets"/>
<Target Name="MyTarget">
<ServiceController MachineName="Box2" ServiceName="MyService" Action="Stop" />
</Target>
</Project>
Когда я запускаю его на машине, которая может видеть Box2, я получаю следующее:
Project "C: \ Scripts \Test.xml "на узле 1 (цели по умолчанию).
C: \ Scripts \ Test.xml (4,5): ошибка: Не удалось найти службу MyService на Box2Готово Создание проекта
"C: \ Scripts \ Test.xml" (цели по умолчанию) - СБОЙ.
Я знаю, что у меня правильное имя службы (яскопировал и вставил его из фактического списка услуг), и я вполне уверен, что он может видеть Box2, потому что, если я изменю его на имя машины, которая не существует (например, Box2asdf), потребуется около 10 секунд, чтобы вернуться (с той же ошибкой, заметьте), в отличие от почти немедленного ответа, который я получаю, когда предоставляю правильное имя компьютера.
Как я могу отладить эту проблему?