首页 > 开发 > 综合 > 正文

使用WMI获得硬盘的信息

2024-07-21 02:17:15
字体:
来源:转载
供稿:网友
首先,什么是wmi?
wmi(windows管理架构:windows management instrumentation)是microsoft基于web的企业管理(wbem)和 desktop management task force(dmtf)工业标准的实现. 就是一种基于标准的系统管理的开发接口,这组接口用来控制管理计算机. 它提供了一种简单的方法来管理和控制系统资源.
如果你想深入了解他,可以参考micorosft platform sdk . 在这我们只是通过它实现一个简单的功能, 得到我们系统中硬盘的相关信息.
我们需要使用.net framwork里面system.management名字空间下提供的类来实现.
using system;
using system.management;
using system.collections;
using system.collections.specialized;
namespace ace_console
{
class ace_console
{
[stathread]
static void main(string[] args)
{
stringcollection propnames = new stringcollection();
managementclass driveclass = new managementclass("win32_diskdrive");
propertydatacollection props = driveclass.properties;
foreach (propertydata driveproperty in props)
{
propnames.add(driveproperty.name);
}
int idx = 0;
managementobjectcollection drives = driveclass.getinstances();
foreach (managementobject drv in drives)
{
console.writeline(" drive({0}) properties ", idx+1);
foreach (string strprop in propnames)
{
console.writeline("property: {0}, value: {1}", strprop, drv[strprop]);
}
}
}
}
}



.net framework sdk自带的帮助里有获得逻辑硬盘大小的代码:
[c#]

using system;

using system.management;



// this example demonstrates getting information about a class using the managementclass object

class sample_managementclass

{

public static int main(string[] args)

{

managementclass diskclass = new managementclass("win32_logicaldisk");

diskclass.get();

console.writeline("logical disk class has " + diskclass.properties.count + " properties");

return 0;

}

}


[vb]
imports system

imports system.management



// this example demonstrates getting information about a class using the managementclass

class sample_managementclass


overloads public shared function main(args() as string) as integer

dim diskclass as new managementclass("win32_logicaldisk")

diskclass.get()

console.writeline(("logical disk class has " & diskclass.properties.count.tostring() & " properties"))

return 0

end function

end class

注册会员,创建你的web开发资料库,
发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表