wmi执行dos命令

来源:互联网 发布:怎么发淘宝店铺链接 编辑:程序博客网 时间:2024/04/29 23:33

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Management;
using System.Threading;
namespace ConsoleApplication10
{
class Program
{

    public static void f(string command)    {        ConnectionOptions connOption = new ConnectionOptions();        connOption.Username = @"\" + "administrator";        connOption.Password = "server";        ManagementPath mngPath = new ManagementPath(@"\\" + "10.100.100.68" + @"\root\cimv2:Win32_Process");        // connOption.Username = @"\" + "haha";        //connOption.Password = "haha";        //ManagementPath 包装了生成和分析wmi对象的路径        // ManagementPath mngPath = new ManagementPath(@"\\" + "10.30.10.119" + @"\root\cimv2:Win32_Process");        ManagementScope scope = new ManagementScope(mngPath, connOption);        scope.Connect();        //ObjectGetOptions 类是指定用于获取管理对象的选项        ObjectGetOptions objOption = new ObjectGetOptions();        //ManagementClass 是表示公共信息模型 (CIM) 管理类,通过该类的成员,可以使用特定的 WMI 类路径访问 WMI 数据        ManagementClass classInstance = new ManagementClass(scope, mngPath, objOption);        int ProcessId = 1;        object[] cmdline = { "cmd  /c" + command, "c:\\", null, ProcessId };        //调用执行命令的方法\        Object str = classInstance.InvokeMethod("Create", cmdline);        String errorStr = "";        Console.WriteLine(int.Parse(str.ToString()));        switch (int.Parse(str.ToString()))        {            case 2:                errorStr = "Access denied";                break;            case 3:                errorStr = "Insufficient privilege";                break;            case 6:                errorStr = "Unknown failure";                break;            case 9:                errorStr = "Path not found";                break;            case 21:                errorStr = "Invalid parameter";                break;            case 0:                errorStr = "OK";                break;            default:                errorStr = "unknow";                break;        }        Console.WriteLine(errorStr);    }    static void Main(string[] args)    {        string command = "md wenjian";        Console.WriteLine("正在创建文件夹");        f(command);         Console.WriteLine("正在删除文件夹");         Thread.Sleep(1000);         command = "rd wenjian";         f(command);    }}

}

0 0