WMI技术介绍和应用——查询硬件信息
? ? ? ? 這個月實在太忙了,一直沒有時間去繼續寫WMI的應用例子。 本來是希望將《WMI技術介紹和應用》系列博文寫的像WMI百科全書般,但是貌似對這個技術感興趣的同學并不多,所以我決定對部分知識點點到為止,有需求的同學可以查詢MSDN相關類的說明即可。本文將羅列一些可能使用到的一些知識點。如果你發現你期望查詢的硬件信息在本文中沒有寫出來,請參看MSDN的《Computer System Hardware Classes》中相關的類。(轉載請指明出于breaksoftware的csdn博客)
? ? ? ? 查詢硬盤信息
? ? ? ? 因為一臺電腦上可以有多塊硬盤,所以在查詢硬盤信息之前,我們需要明確我們要查詢哪塊硬盤。其中我們將要使用到《WMI技術介紹和應用——查詢磁盤分區和邏輯磁盤信息》中相關信息。本文我們將以獲取系統啟動盤所在的硬盤信息為例。首先我們通過
SELECT DiskIndex FROM Win32_DiskPartition WHERE Bootable = TRUE
? ? ? ? 如何使用WMI查詢系統盤所在硬盤的硬盤序列號?
SELECT SerialNumber FROM Win32_DiskDrive WHERE Index = 0
? ? ? ? 如何使用WMI查詢系統盤所在的硬盤的接口類型?
SELECT InterfaceType FROM Win32_DiskDrive WHERE Index = 0
? ? ? ? ?如何使用WMI查詢系統盤所在的硬盤的名字?
SELECT Caption FROM Win32_DiskDrive WHERE Index = 0
? ? ? ? ? 如何使用WMI查詢系統盤所在的硬盤的大小?
SELECT Size FROM Win32_DiskDrive WHERE Index = 0
? ? ? ? 看這個數字,就是160G硬盤實際的byte數。注意這個是10進制數字,而我們在電腦上看到硬盤的大小為該數字除以(1024*1024*1024)。
? ? ? ? 查詢主板信息
? ? ? ? 如何使用WMI查詢主板的序列號?
SELECT SerialNumber FROM Win32_BaseBoard
? ? ? ? 查詢BIOS信息
? ? ? ? 如何使用WMI查詢BIOS的序列號?
SELECT SerialNumber FROM Win32_BIOS
? ? ? ? 如何使用WMI查詢BIOS的廠商?
SELECT Manufacturer FROM Win32_BIOS
? ? ? ? 如何使用WMI查詢BIOS的版本號?
SELECT SMBIOSMajorVersion,SMBIOSMinorVersion FROM Win32_BIOS
? ? ? ? 如何使用WMI查詢內存信息?
SELECT * FROM Win32_MemoryDevice
? ? ? ? 查詢顯示器信息
? ? ? ? 如何使用WMI查詢顯示器的分辨率?
SELECT ScreenHeight FROM Win32_DesktopMonitor
? ? ? ?如何使用WMI查詢屏幕刷新頻率?
SELECT DisplayFrequency FROM Win32_DisplayConfiguration
? ? ? ? 查詢網絡適配器
? ? ? ??如何使用WMI查詢處于活動狀態的網卡MAC地址?
SELECT MACAddress FROM Win32_NetworkAdapter WHERE NetEnabled = 'TRUE'
? ? ? ? 可以見得我這兒有三個處于活動狀態的網卡,其對應于
? ? ? ? 如果想排除VM虛擬出來的網卡,可以通過廠商名字限制。
? ? ? ? 查詢CPU信息
? ? ? ? 如何使用WMI查詢CPU的序列號?
SELECT ProcessorId FROM Win32_Processor
? ? ? ? 如何使用WMI查詢CPU的名稱?
SELECT Name FROM Win32_Processor
? ? ? ? 如何使用WMI查詢有幾個物理核心和幾個邏輯核心?
SELECT NumberOfCores,NumberOfLogicalProcessors FROM Win32_Processor
? ? ? ? 這個數據說明T9400是雙核雙線程CPU。
? ? ? ? 如何使用WMI判斷當前系統是32位系統還是64位系統?
SELECT AddressWidth FROM Win32_Processor
? ? ? ? 這個證明我當前系統是64位系統。
? ? ? ? 如何使用WMI獲取CPU構架?
SELECT Architecture FROM Win32_Processor
? ? ? ? 該值表明T9400是x64構架CPU。
| Value | Meaning |
|---|---|
| x86 |
| MIPS |
| Alpha |
| PowerPC |
| ARM |
| Itanium-based systems |
| x64 |
SELECT ExtClock FROM Win32_Processor
? ? ? ? 單位是MHz。即266MHz。
? ? ? ? 如何使用WMI查詢CPU的主頻?
SELECT CurrentClockSpeed FROM Win32_Processor
? ? ? ? 單位是MHz。即2.534GHz。
? ? ? ? 至此,使用WMI查詢的內容就講完了。之后我將講解如何使用WMI監聽事件,這也是個非常強大和有趣的功能,我們拭目以待吧。
? ? ? ? 工程源碼見《WMI技術介紹和應用——WMI概述》結尾。
總結
以上是生活随笔為你收集整理的WMI技术介绍和应用——查询硬件信息的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 使用程序解决一道逻辑推理题
- 下一篇: 发现一个windows7(32bit或6