So geht es:
Delphi-Quellcode:
uses Winapi.ShellAPI;
function GetOneDrive(
const Drive:
string):
string;
var
FI: TSHFileInfo;
begin
if SHGetFileInfo(
PChar(Drive),
0,
FI,
SizeOf(FI),
SHGFI_DISPLAYNAME
) = 0
then
RaiseLastOSError;
Result := FI.szDisplayName;
end;
function GetAllDrives: TStringDynArray;
overload;
var
i: Integer;
begin
Result := TDirectory.GetLogicalDrives;
for i:=Low(Result)
to High(Result)
do
Result[i] := GetOneDrive(Result[i]);
end;
Es wäre schön, wenn die Embas diese nützliche Routine in IOUtils aufnehmen würden. Dann brauchte man sich nicht mit dem Systemaufruf herum zu schlagen. Vergisst man wieder.
Gruß Willie.