Einzelnen Beitrag anzeigen

ringli

Registriert seit: 7. Okt 2004
510 Beiträge
 
Delphi 11 Alexandria
 
#2

Re: Laufwerksbuchstaben aus Laufwerksnamen ermitteln

  Alt 6. Sep 2007, 22:11
Wie wäre es damit:
Delphi-Quellcode:
// Diese Funktion ist hier aus dem Forum
function GetVolumeLabel(Drive:char):string;
var VolLab:array [0..max_path] of char;
    MaxLength,SysFlag:DWord;
    OldErrorMode:integer;
begin
  OldErrorMode := SetErrorMode(SEM_FAILCRITICALERRORS);
  try
    if GetVolumeInformation(PChar(drive+':\'), VolLab, 255,
                       nil, MaxLength,
                       SysFlag, nil, 255) then
      begin
        Result:=vollab;
      end
    else
      begin
        Result := '';
      end;

  finally
    SetErrorMode(OldErrorMode);
  end;
end;

procedure TForm1.Button1Click(Sender: TObject);
var
  I : Integer;
  Drive : Char;
  VolumeLabel : String;
begin
  for I := 0 to 25 do
    begin
      Drive := Chr(I + Ord('A'));
      VolumeLabel := GetVolumeLabel(Drive);

      if VolumeLabel = 'Garminthen
        begin
          showmessage('Der gesuchte Laufwerksbuchstabe ist: ' + Drive + ':');
          Exit;
        end;
    end;
end;
  Mit Zitat antworten Zitat