最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

c#與WMI使用技巧集

 更新時(shí)間:2007年03月09日 00:00:00   作者:  

獲取CPU序列號(hào)代碼 
string cpuInfo = "";//cpu序列號(hào) 
   ManagementClass cimobject = new ManagementClass("Win32_Processor"); 
   ManagementObjectCollection moc = cimobject.GetInstances(); 
   foreach(ManagementObject mo in moc) 
   { 
    cpuInfo = mo.Properties["ProcessorId"].value.ToString(); 
    Console.WriteLine(cpuInfo); 
    Console.ReadLine(); 
   } 
獲取網(wǎng)卡硬件地址 
using System.Management; 
... 
ManagementClass mc = new ManagementClass("Win32_NetworkAdapterConfiguration"); 
ManagementObjectCollection moc = mc.GetInstances(); 
foreach(ManagementObject mo in moc) 

if((bool)mo["IPEnabled"] == true) 
Console.WriteLine("MAC address\t{0}", mo["MacAddress"].ToString()); 
mo.Dispose(); 


獲取硬盤ID 
String HDid; 
ManagementClass cimobject = new ManagementClass("Win32_DiskDrive"); 
ManagementObjectCollection moc = cimobject.GetInstances(); 
foreach(ManagementObject mo in moc) 

 HDid = (string)mo.Properties["Model"].value; 
 MessageBox.Show(HDid  );  



16、在.NET中輕松獲取系統(tǒng)信息(1) -WMI篇 
Montaque 
申明: 
    1、個(gè)人的一點(diǎn)心得,僅供參考 
    2、轉(zhuǎn)載時(shí)候,請(qǐng)保留原本。 

概述: 
 不知道大家有沒有這種體會(huì)?有時(shí)候?yàn)榱双@取系統(tǒng)一點(diǎn)點(diǎn)信息,比如考慮一下操作系統(tǒng)的版本號(hào),或者當(dāng)前屏幕的分辨率。其實(shí)說到底就是讀操作系統(tǒng)某個(gè)方面的一個(gè)屬性值而已,然后就看到我們的程序中密密麻麻的Win32 API申明,調(diào)用,代碼的可讀性和維護(hù)性不言而喻。到了.NET,微軟提供了更為豐富的類,有很多以前要調(diào)用API的方法可以在.NET中輕而易舉的調(diào)用實(shí)現(xiàn)。今天簡(jiǎn)單介紹一個(gè)在.NET中如何通過與WMI(Windows 管理規(guī)范)的通訊,從而得到獲取信息的目的。 
主要思路: 
 舉一個(gè)獲取操作系統(tǒng)共享目錄和獲取主板號(hào)的例子,介紹如何利用System.Managment下面的類獲取系統(tǒng)相關(guān)的信息: 

正文: 
 WMI(Windows管理規(guī)范:Windows Management Instrumentation)是Microsoft基于Web的企業(yè)管理(WBEM)的實(shí)現(xiàn),同時(shí)也是一種基于標(biāo)準(zhǔn)的系統(tǒng)管理接口。WMI最早出現(xiàn)在Microsoft Windows 2000系統(tǒng)上,但它同樣可以安裝在Windows NT 4和Windows 9x計(jì)算機(jī)上。WMI是一種輕松獲取系統(tǒng)信息的強(qiáng)大工具。 
 在.NET中,有一個(gè)System.Management名空間(系統(tǒng)默認(rèn)沒有引用,我們可以手動(dòng)添加引用),通過下面的Class的操作,可以查詢系統(tǒng)軟硬件的信息,先看一個(gè)簡(jiǎn)單的例子: 

Imports System.Management 
Dim searcher As New ManagementObjectSearcher("SELECT * FROM Win32_share") 
Dim share As ManagementObject 
 For Each share In searcher.Get() 
       MessageBox.Show(share.GetText(TextFormat.Mof)) 
 Next share 
運(yùn)行的結(jié)果是列出了所有系統(tǒng)當(dāng)前共享的目錄、以及描述等等。 

分析一下上面的代碼,可以看到一下幾點(diǎn): 
1、似乎是在進(jìn)行數(shù)據(jù)庫(kù)操作,有點(diǎn)像SQL語(yǔ)句。其實(shí)就是SQL操作,這種語(yǔ)句被成WQL(WMI Query Language),實(shí)際上是標(biāo)準(zhǔn)SQL的一個(gè)子集加上了WMI的擴(kuò)展. 
2、WQL是個(gè)只讀的查詢語(yǔ)言,我們只能查詢響應(yīng)的數(shù)據(jù),不能用UPDATE,INSERT等更新操作 
3、代碼很簡(jiǎn)單、通俗易懂 
4、我們采用了一種MOF(托管對(duì)象格式)的顯示。 

例子二:獲取當(dāng)前主板的信息 
 上面的例子是一個(gè)軟件方面的信息,下面看一個(gè)獲取硬件信息的例子,獲取主板的序列號(hào)以及制造商: 
Dim searcher As New ManagementObjectSearcher("SELECT * FROM Win32_BaseBoard") 
Dim share As ManagementObject 
   For Each share In searcher.Get() 
      Debug.WriteLine("主板制造商:" & share("Manufacturer")) 
      Debug.WriteLine("型號(hào):" & share("Product")) 
      Debug.WriteLine("序列號(hào):" & share("SerialNumber")) 
   Next share 
總結(jié)以及補(bǔ)充: 
 WMI類也是分層次的,具體可以參考msdn中的WMI;轉(zhuǎn)向.NET平臺(tái)開發(fā)的時(shí)候,最好能多看一些關(guān)于.NET新特性的介紹,這樣可以大幅度的提升代碼的開發(fā)效率以及運(yùn)行效率。

相關(guān)文章

  • C#正則過濾HTML標(biāo)簽并保留指定標(biāo)簽的方法

    C#正則過濾HTML標(biāo)簽并保留指定標(biāo)簽的方法

    這篇文章主要介紹了C#正則過濾HTML標(biāo)簽并保留指定標(biāo)簽的方法,涉及C#針對(duì)頁(yè)面HTML元素正則匹配與替換相關(guān)操作技巧,需要的朋友可以參考下
    2017-06-06
  • C#中string用法實(shí)例詳解

    C#中string用法實(shí)例詳解

    這篇文章主要介紹了C#中string用法,非常詳細(xì)的總結(jié)了比較常見的關(guān)于C#中string的幾個(gè)常用方法,需要的朋友可以參考下
    2014-08-08
  • C#調(diào)用C類型dll入?yún)閟truct的問題詳解

    C#調(diào)用C類型dll入?yún)閟truct的問題詳解

    這篇文章主要給大家介紹了關(guān)于C#調(diào)用C類型dll入?yún)閟truct問題的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-03-03
  • C# 并行和多線程編程——認(rèn)識(shí)和使用Task

    C# 并行和多線程編程——認(rèn)識(shí)和使用Task

    這篇文章主要介紹了C# 并行和多線程編程——認(rèn)識(shí)和使用Task的的相關(guān)資料,幫助大家更好的理解和使用c#,感興趣的朋友可以了解下
    2021-02-02
  • C#調(diào)用python腳本的方法詳解

    C#調(diào)用python腳本的方法詳解

    這篇文章主要為大家詳細(xì)介紹了C#調(diào)用python腳本的方法,文中通過示例代碼介紹的非常詳細(xì),感興趣的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2023-11-11
  • 關(guān)于C# 類和對(duì)象詳情

    關(guān)于C# 類和對(duì)象詳情

    類是C#面向?qū)ο缶幊痰幕締卧?。一個(gè)類都可以包含2種成員:字段和方法,接下來小編將在文章里向大家詳細(xì)介紹
    2021-09-09
  • C#中通過反射將枚舉元素加載到ComboBo的實(shí)現(xiàn)方法

    C#中通過反射將枚舉元素加載到ComboBo的實(shí)現(xiàn)方法

    本文主要介紹了C#中通過反射將枚舉元素加載到ComboBo的實(shí)現(xiàn)方法,文中通過示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2021-09-09
  • c# 正則指引--字符組

    c# 正則指引--字符組

    c#中通過正則來判斷數(shù)字字符在同一個(gè)位子可能出現(xiàn)的各種字符,需要的朋友可以參考下
    2012-10-10
  • C# 對(duì)PDF文檔加密、解密(基于Spire.Cloud.SDK for .NET)

    C# 對(duì)PDF文檔加密、解密(基于Spire.Cloud.SDK for .NET)

    這篇文章主要介紹了C# 基于Spire.Cloud.SDK for .NET對(duì)PDF文檔進(jìn)行加密解密,文中講解非常細(xì)致,幫助大家更好的理解和學(xué)習(xí),感興趣的朋友可以了解下
    2020-07-07
  • C#可用于登錄驗(yàn)證碼的四位隨機(jī)數(shù)生成方法

    C#可用于登錄驗(yàn)證碼的四位隨機(jī)數(shù)生成方法

    這篇文章主要介紹了C#可用于登錄驗(yàn)證碼的四位隨機(jī)數(shù)生成方法,提供了兩種生成四位隨機(jī)數(shù)的方法供大家參考,是非常實(shí)用的技巧,需要的朋友可以參考下
    2014-12-12

最新評(píng)論

富蕴县| 九台市| 上高县| 钦州市| 陕西省| 无锡市| 全椒县| 招远市| 漯河市| 德安县| 仙桃市| 海阳市| 五寨县| 板桥市| 高陵县| 建阳市| 信宜市| 曲沃县| 黎平县| 荆州市| 云林县| 万年县| 甘谷县| 蒲江县| 惠来县| 邯郸县| 永德县| 旌德县| 长子县| 武胜县| 清水河县| 武宣县| 衡水市| 东海县| 余庆县| 原平市| 商丘市| 兴安县| 渭源县| 克东县| 佛冈县|