I want to get a name or drive label.
I am using this function:
function GetVolumeLabel(DriveChar: Char): string;
var
NotUsed: DWORD;
VolumeFlags: DWORD;
VolumeInfo: array[0..MAX_PATH] of Char;
VolumeSerialNumber: DWORD;
Buf: array [0..MAX_PATH] of Char;
begin
GetVolumeInformation(PChar(DriveChar + ':\'),
Buf, SizeOf(VolumeInfo), @VolumeSerialNumber, NotUsed,
VolumeFlags, nil, 0);
SetString(Result, Buf, StrLen(Buf)); { Set return result }
Result:=AnsiUpperCase(Result)
end;
For example, here are my drives in Windows Explorer:
Local Disk (C:)
Data (D:)
DVD RW Drive (E:)
Code output:
C:
D: DATA
E:
Labels C and E are empty. What winapi / function should be used to display an unnamed drive label (C and E)?
source
share