GetVolumeInformation - problem z etykietą dysku

GetVolumeInformation - problem z etykietą dysku
TS
  • Rejestracja:ponad 17 lat
  • Ostatnio:ponad 15 lat
0

Jeżeli w pętli for umieszczę GetVolumeInformation i kolejno sprawdzam etykiety wszystkich dysków, a któryś z dysków (np. CD-ROM) tej etykiety nie posiada, to zamiast zwracać mi jakąś wartość 0, to zwraca mi etykietę poprzedniej partycji, mimo tego że zadeklarowałem w kodzie coś takiego:

Kopiuj

  if (Etykieta = '') and (DriveType = DRIVE_CDROM) then Etykieta:= 'Stacja dysków CD';
  if (Etykieta = '') and (DriveType = DRIVE_FIXED) then Etykieta:='Dysk lokalny';
  if (DriveType = DRIVE_CDROM) then rodzaj := 'Napęd CD-ROM: ';
  if (DriveType = DRIVE_FIXED) then rodzaj := 'Dysk Twardy: ';
  if (DriveType = DRIVE_UNKNOWN) then rodzaj := 'Nieznany typ dysku: ';

Zwraca mi coś takiego:
Dysk Twardy: C:\Dysk lokalny //brak etykiety więc przypisało 'Dysk lokalny' (j/w), czyli jest ok
Dysk Twardy: D:\Muzyka //tu jest ok
Dysk Twardy: E:\Gry i Programy //tu jest ok
Dysk Twardy: F:\Filmy //tu jest ok
Napęd CD-ROM: G:\Filmy //tu nie ma etykiety a przyjmuje z poprz. dysku !! !!!
Napęd CD-ROM: H:\New //tu jest ok bo w napędzie jest płyta

Co mam zrobić, żeby nie pobierało mi etykiety poprzedniego dysku?
z góry dzięki

WIktorDelphi
  • Rejestracja:prawie 19 lat
  • Ostatnio:prawie 17 lat
0

Moze po kazdym przebiegu petli zrob Etykieta := ''; xD


<img src="http://www.drajwer.iglu.cz/syg/display.php?id=113" alt="user image" />
TS
  • Rejestracja:ponad 17 lat
  • Ostatnio:ponad 15 lat
0

że też na to nie wpadłem :) śmiga wyśmienicie :) pozdrawiam i dziękuję!

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.