關於取硬碟序列號

2021-09-07 20:05:46 字數 1202 閱讀 6411

測試環境:win7 64位

參考:方法1,結果:5vp9mz60

managementclass mc = new managementclass("win32_physicalmedia");

//網上有提到,用win32_diskdrive,但是用win32_diskdrive獲得的硬碟資訊中並不包含serialnumber屬性。   

managementobjectcollection moc = mc.getinstances();

string strid = null;

foreach (managementobject mo in moc)

textbox1.text += "硬碟 id:" + strid;

方法2,結果:4031371149,同方法3,此是10進製。

managementobjectsearcher mos = new managementobjectsearcher();

mos.query = new selectquery("win32_diskdrive", "", new string );

managementobjectcollection mycollection = mos.get();

managementobjectcollection.managementobjectenumerator em = mycollection.getenumerator();

em.movenext();

managementbaseobject moo = em.current;

string id = moo.properties["signature"].value.tostring().trim();

this.textbox1.text = id;

方法3,結果:f049d78d,同方法2,乙個是10進製,乙個是16進製制

方法4,結果:5vp9mz60

使用軟體:everest.exe

四種方法,共有兩個結果,哪個是對的呢?

其實網上除了c#託管**讀硬碟號外,還有一些win32做好的dll,測試下來也是5vp9mz60,甚至有人說普通許可權執行和管理員許可權執行得到的結果也不一樣。

最終還是把電腦開啟自己看,結果顯示,s/n: 5vp9mz60,有圖有真像。

檢視硬碟序列號

windows下使用diskpart命令 win r鍵執行cmd,進入命令列介面 1.diskpart 2.list disk 檢視有幾塊硬碟 3.select disk 0 選擇第一塊硬碟 4.detail disk 顯示選擇的硬碟詳細資訊 顯示的第一行是硬碟型號,第二行id是序列號。5.若有多塊...

讀取硬碟序列號

pragma hdrstop pragma argsused include include include include hdd.h const word ide atapi identify 0xa1 讀取atapi裝置的命令 const word ide ata identify 0xec ...

VB硬碟序列號 邏輯

第乙個是乙個函式,連在一起不要斷開。第二個是乙個窗體載入的事件,請寫入某個窗體的 中,private declare function 獲得硬碟序列號 lib kernel32 alias getvolumeinformationa byval lprootpathname as string,by...