0

我有这个代码:

ConnectionOptions connOptions = new ConnectionOptions();
connOptions.Impersonation = ImpersonationLevel.Impersonate;
connOptions.EnablePrivileges = true;
ManagementScope manScope = new ManagementScope(String.Format(@"\\{0}\ROOT\CIMV2", sHost), connOptions);
manScope.Connect();
ObjectGetOptions objectGetOptions = new ObjectGetOptions();
ManagementPath managementPath = new ManagementPath("Win32_Process");
ManagementClass processClass = new ManagementClass(manScope, managementPath, objectGetOptions);
ManagementBaseObject inParams = processClass.GetMethodParameters("Create");
inParams["CommandLine"] = "notepad.exe";
ManagementBaseObject outParams = processClass.InvokeMethod("Create", inParams, null);

当我将 sHost 设置为我的本地 IP 地址时,它可以工作并打开记事本。但是,当我将其设置为远程服务器时,什么也没有发生。

(我能够连接到远程计算机并从我的应用程序复制文件 - 这只是为了尝试远程运行东西。防火墙也已为 WMI 配置)。

有点没有更多的想法...

谢谢。

4

1 回答 1

2

也许,您应该使用 PsTools(从您的应用程序运行)?非常适合远程部署。

于 2013-01-13T14:49:55.420 回答