>How do I get the disk ID number?
Maybe the following examples can help you?
-malcolm

procedure TForm1.Button1Click(Sender: TObject);
var drive  :string;
begin
  drive:='c:\';
  case GetDriveType(@drive[1]) of
    DRIVE_UNKNOWN     :ShowMessage('DRIVE_UNKNOWN');
    DRIVE_NO_ROOT_DIR :ShowMessage('DRIVE_NO_ROOT_DIR');
    DRIVE_REMOVABLE   :ShowMessage('DRIVE_REMOVABLE');
    DRIVE_FIXED       :ShowMessage('DRIVE_FIXED');
    DRIVE_REMOTE      :ShowMessage('DRIVE_REMOTE');
    DRIVE_CDROM       :ShowMessage('DRIVE_CDROM');
    DRIVE_RAMDISK     :ShowMessage('DRIVE_RAMDISK');
  end;
end;

procedure TForm1.Button2Click(Sender: TObject);
var
  drive:string;
  VolumeName,FileSystemName:array[0..256]of char;
  SerialNumber,MaximumComponentLength,FileSystemFlags:DWORD;
begin
  drive:='c:\';
  if GetVolumeInformation(@drive[1], VolumeName, length(VolumeName),
                       @SerialNumber, MaximumComponentLength,
                       FileSystemFlags, FileSystemName,
                       length(FileSystemName)) then
    ShowMessage('Disk '+drive+' has a serial number of 
'+IntToStr(SerialNumber))
  else
    raise Exception.CreateFmt('GetVolumeInformation failed. ErrorCode %d 
: %s',
                                
[GetLastError,SysErrorMessage(GetLastError)]);
end;
_______________________________________________
Delphi mailing list -> [email protected]
http://www.elists.org/mailman/listinfo/delphi

Reply via email to