在不同域中的远程计算机上启动Windows服务

我的电脑是域A和域B的远程服务器,我想用我的电脑使用C#或任何其他语言或脚本重新启动服务器上的服务。

笔记:

  1. 我通过VPN连接到服务器,这意味着我可以手动RDP服务器,并可以手动重新启动服务。
  2. 我无法访问服务器上使用连接到其他计算机在本地服务窗口的操作button。
  3. 我有服务器的pipe理员权限。
  4. 我不能(不允许)添加任何组件到服务器。
  5. 我有不同的远程机器凭据集

您应该首先尝试sc命令,确保您能够使用当前的权限和凭据远程启动该服务。 如果这样的话,看看System.ServiceProcess.ServiceController

当你说你是一个远程机器上的管理员,我假设这意味着你用不同的凭据登录。 我不相信这两者中的任何一个都会允许你使用备用凭证 – 即命令将以Domain A权限执行,而这些权限很可能不足以满足你的要求。

你可以使用批处理文件吗? 我通常使用这样的东西:

 NET USE \\computername\IPC$ /U:domainname\username password SC \\computername START service