namespace WMISample { class Program { static void Main(string[] args) { string remoteMachine = "server"; ConnectionOptions connOptions = new ConnectionOptions(); connOptions.Impersonation = ImpersonationLevel.Impersonate; connOptions.EnablePrivileges = true; ManagementScope manScope = new ManagementScope(String.Format(@"\\{0}\ROOT\CIMV2", remoteMachine), 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); Console.WriteLine("Creation of the process returned: " + outParams["returnValue"]); Console.WriteLine("Process ID: " + outParams["processId"]); Console.ReadLine(); } } }