Announcement

Collapse
No announcement yet.

Volumelabel einer Diskette

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Volumelabel einer Diskette

    Wie kann ich die Bezeichnung (VolumeLabel) einer Diskette ermitteln?

  • #2
    Hallo!<p>
    Um an den Volums-Name zu gelangen, musst du die <b>GetVolumeInformation</b>-API-Funktion verwenden.
    Interrsant ist dabei der zweite Parameter: <b>lpVolumeNameBuffer</b> (PChar) enthält nach den Aufruf der API-Routine den Volumen-Namen.<p>
    Gruß,<br>
    Bernhard
    <p>
    PS: Bin gerade dabei eine Volume-Informations-Funktion für die Jcl zu schreiben, damit das in Zukunft einfacher wird..

    Comment


    • #3
      Danke Bernhard,

      könntest du mir bitte ein kurzes Beispiel für die Verwendung in Delphi zeigen. Ich wusste zwar von dieser API-Funktion, hatte aber Probleme damit.

      Gruß,
      Aloi

      Comment


      • #4
        <pre>
        function GetVolumeName(Volume: string): string;
        var
        MaxFilenameLength, FileSystemFlags: DWORD;
        begin
        SetLength(Result, MAX_PATH);
        if GetVolumeInformation(PChar(Volume), PChar(Result), MAX_PATH, 0,
        MaxFilenameLength, FileSystemFlags, nil, 0) then
        SetLength(Result, Length(PChar(Result)))
        else
        Result := ''; // etwas ging schief.... *argh*
        end;
        </pre>
        <p>
        Die Funktion liefert den Volumennamen oder einen Leer-String wenn etwas schief gegangen sit... (z.B. Volumen nicht gefunden)

        Beispiel-Aufruf:<p>
        <pre>ShowMessage(GetVolumeName('C:\');</pre>

        <p>
        Hoffe dir ist damit geholfen,<br>
        Gruß,<br>
        Bernhar

        Comment


        • #5
          Ups, der Beispielaufruf muss natürlich so lauten:<p>
          <pre>ShowMessage(GetVolumeName('C:\'));</pre&gt

          Comment


          • #6
            Alles ok!
            Vielen Dank Bernhard

            Comment

            Working...
            X