以不同用户身份运行 Services.msc C#

问题描述 投票:0回答:2

我需要创建一个简单的 Windows 窗体应用程序,允许管理员用户管理远程服务器上的服务。我们不想向管理员提供服务器的用户名和密码,因此这些内容将被加密并存储在数据库中。

我的问题是,在模拟数据库中存储的用户之一时是否可以生成 Services.msc 窗口?

我查看了 ProcessStartInfo 类,但因为 Services.msc 不是可执行文件,所以它似乎不喜欢执行它。关于实际模拟和加载 Services.msc 的简单方法有什么想法 - 比如单击按钮吗?

谢谢

c# winforms windows-services runas
2个回答
1
投票

文件扩展名 msc 与 mmc.exe 关联。您需要开始以下操作:

mmc.exe services.msc

1
投票

Spender 速度更快,因此他获得了积分。这就是我所做的,以防万一它对某人有用。

SecureString ss = new SecureString();
ss.AppendChar('X');
// other calls to AppendChar
ProcessStartInfo psi = new ProcessStartInfo() {
    UserName = "XXX", Password = ss, Domain = "XXX",
      UseShellExecute = false,
      FileName = "mmc", Arguments = "services.msc"
  };
Process.Start(psi);
© www.soinside.com 2019 - 2024. All rights reserved.