Παρασκευή 11 Μαΐου 2012

Volume serial number

With this simple function, you will be able to get volume serial number and label. It could be either hard disk partition or CD/DVD disk.

unit Unit1;
 
interface
 
uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls;
 
type
  TForm1 = class(TForm)
    Button1: TButton;
    procedure Button1Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;
 
var
  Form1: TForm1;
 
implementation
 
{$R *.dfm}
 
function GetHardDiskSerial(const DriveLetter: char): string;
var NotUsed, VolumeFlags, VolumeSerialNumber: dWord;
    VolumeInfo: array[0..MAX_PATH] of char;
begin
  GetVolumeInformation(PChar(DriveLetter + ':\'), VolumeInfo, SizeOf(VolumeInfo),
           @VolumeSerialNumber, NotUsed, VolumeFlags, nil, 0);
  Result := Format('Label = %s  VolSer = %8.8X', [VolumeInfo, VolumeSerialNumber]);
end;
 
procedure TForm1.Button1Click(Sender: TObject);
begin
  ShowMessage(GetHardDiskSerial('c'));
end;
 
end.

Δεν υπάρχουν σχόλια:

Δημοσίευση σχολίου