今天在用WMI远程获取服务器任务计划是遇到一问题,还望高手解答,谢谢!
代码如下:
string strWMI = "select * from Win32_ScheduledJob";
ConnectionOptions Conn = new ConnectionOptions();
Conn.Username =si.Domain + si.UserName;
Conn.Password =si.PassWord;
ManagementScope Ms = new ManagementScope("\\\\" + si.IP + "\\root\\cimv2");
Ms.Options = Conn;
Ms.Connect();
ObjectQuery Query = new ObjectQuery(strWMI);
ManagementObjectSearcher Searcher = new ManagementObjectSearcher(Ms, Query);
ManagementObjectCollection ReturnCollection =Searcher.Get();
问题就在于运行到下面这一步的时候,就跳出foreach循环了,表示ReturnCollection中根本没值,但是打开服务器的计划任务有确实存在。
foreach (ManagementObject Return in ReturnCollection)
{
string JobName = Return["Name"].ToString();
string LastResult = Return["JobStatus"].ToString();
}
郁闷中,用这种方法获得服务器(同一台)硬盘信息是可以的(Win32_LogicalDisk),但获取计划任务就不行,不知道是不是服务器设置问题。