上運行的程序我有這樣的代碼:遠程計算機
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配置了防火牆)。
有點沒有更多的想法...
謝謝。
我假設你已經選中記事本沒有在遠程計算機的後臺運行(查看任務管理器)?你沒有連接到登錄用戶的桌面會話,所以它可能不會顯示在屏幕上。 – Rhumborl
感謝您的回覆。是的,我檢查了,但沒有運行,它不會在後臺運行。我也嘗試將用戶名和密碼設置爲「connOptions」,但仍然沒有... – Idanis
可以檢查outParams [「returnValue」]和outParams [「processId」]的值嗎? – prthrokz