如何WMI运行批处理文件
假设我的机器是A,我利用WMI连接到B机器,并且创建一个cmd.exe进程,让cmd.exe去运行C机器(IP为192.168.10.1)上的一个共享的批处理文件,请问怎么实现?
连接和创建cmd.exe进程都没问题,我传递给cmd.exe的命令行参数为:
cmd.exe /c \\192.168.10.1\1\1.bat,执行没有成功,为什么?
ManagementPath mp=new ManagementPath("Win32_Process");
ManagementClass processClass = new ManagementClass(ms,mp,null);
//取得输入参数
ManagementClass ProcessStartup=new ManagementClass(ms,new ManagementPath("Win32_ProcessStartup"),null);
ProcessStartup.SetPropertyValue("ShowWindow",3);
ProcessStartup.SetPropertyValue("WinstationDesktop",null);
ManagementBaseObject inParams = processClass.GetMethodParameters("Create");
//inParams["CommandLine"] = "cmd /c \\192.168.10.1\1\1.bat"
inParams["CommandLine"] = this.tbRemoteBatFileName.Text.Trim();
inParams["ProcessStartupInformation"] = ProcessStartup;
//执行创建进程
ManagementBaseObject outParams = processClass.InvokeMethod ("Create", inParams, null);