1 頁 (共 1 頁)

如何取出磁碟區序號(VolumeSerialNumber)

發表於 : 2008年 11月 27日, 18:21
tim
在 cmd mode 下 dir 可以看到 磁碟區序號 的一組 xxxx-xxxx 的 8位 16進位數字.
要如何以程式取得呢?

參考資料:
http://www.experts-exchange.com/Program ... 76617.html
http://www.delphicorner.f9.co.uk/articles/wapi2.htm


可以使用 GetVolumeInformation 來取得, 程式如下:

代碼: 選擇全部

    procedure Tform1.Button5Click(Sender: TObject); 
    var 
      Drive: String; 
      Error: Boolean; 
      VolSN: DWORD; 
      NotUsed, VolFlags: DWord; 
      s : string; 
    begin 
      Drive := 'C:'; 
      Error := GetVolumeInformation(PChar(Drive), nil, 0, @VolSN, NotUsed, VolFlags, nil,0); 
      s := IntToHex(HiWord(Volsn), 4) + '-' + IntToHex(Loword(Volsn), 4); 
      ShowMessage(s); 
    end;