Getting drive number when given a letter
   


Some Delphi functions use a byte variable instead of a character when dealing with drives. I created this function to give me a number equivalent of a drive (1 = A, 2 = B, etc.). To get the drive letter given a number, see GetDriveLetter().

function GetDriveNumber(Drive: char): byte;
{ func to return the drive number. Ex: A = 1, B = 2, C = 3, etc. }
var
  DriveStr: string;
begin
  DriveStr := UpperCase(Drive);
  if DriveStr[1] in ['A'..'Z'] then
    Result := ord(DriveStr[1]) - ord('A') + 1
  else
    Result := 0;
end;


Blue Orb Software

[email protected]