关于C#中如何使用wmi获得操作系统信息?

最近项目中用到了windows server 2012操作系统中的存储池和ISCSI Disk的技术。前期,我们整个操作都是用power shell脚本去实现了。带来了不方便,后期要使用wmi API执行。

下面给出wmi所有的命名空间和sample的网站,很值得收藏!后期会把项目中的例子补充完整。

备注:http://wutils.com/wmi/

下面简单介绍一下如果使用wmi来创建磁盘操作

//Project -> Add reference -> System.Management
//using System.Management;
ManagementClass diskClass = new ManagementClass("\\.\ROOT\WMI", "WT_Disk", null);
ManagementBaseObject methodParams = diskClass.GetMethodParameters("NewDiffWTDisk");
methodParams["DevicePath"] = @"D:iSCSIVirtualDisksyueyq.vhdx";
methodParams["ParentPath"] = @"D:iSCSIVirtualDiskswinows7.vhdx";
methodParams["Description"] = "yueyongqiang test use...";
methodParams["CacheParent"] = true;
//Execute the method
ManagementBaseObject outParams = diskClass.InvokeMethod("NewDiffWTDisk", methodParams, null);    
具体的参数可以参考:http://wutils.com/wmi/root/wmi/wt_disk/#NewDiffWTDisk
原文地址:https://www.cnblogs.com/yongqiangyue/p/4065235.html