View Full Version : Delphi: Come si legge l'etichetta di volume di un HD?
Ho provato con GetVolumeInformation ma per qualche ragione restiuisce stringhe strane...
In che senso stringhe strane ?!?!?!
Magari ti restituisce si il nome dell'HDD ma anche tutto il resto della stringa che hai passato per completare i 255 char, magari chei una cosa del genere: "qwerty|||||||||||||||||||||||||||||||||||" oppure rovescita!!
Io nn conosco il delphi la mia è solo una supposizione :rolleyes:
Il mio disco D si chiama "QUANTUM15" e il programma mi da qualcosa del tipo "?=$g" (in questo momento non posso scrivere la stringa esatta)
e cmq restituisce la stessa stringa per tutti i dischi...
non vorrei dire una cagata...ma magari se sono partizioni dello stesso HDD...magari non le becca....se sono proprio HD diversi...nn so :(
????
cmq sono dischi diversi
sicuramente sbaglio nel lavorare con le variabili PAnsiChar
chi mi dice dov'è l'errore?
var
RootPathName, VolumeNameBuffer, FIleSystemNameBuffer: PAnsiCHar;
VolumeSerialNumber: PDWord;
VolumeNameSize, MaximumComponentLength, FileSystemFlags, FileSystemNameSize: Cardinal;
begin
RootPathName := PAnsiChar('d:\');
VolumeNameSize := 10;
FileSystemNameSize := 10;
GetVolumeInformation(RootPathName, VolumeNameBuffer, VolumeNameSize, VolumeSerialNumber, MaximumComponentLength, FileSystemFlags, FileSystemNameBuffer, FIleSystemNameSize);
end;
il risultato della funzione è:
RootPathname = "d:\"
VolumeNameBuffer = "½"
FileSystemNameBuffer = "S‹Ø‹Ãè&Ì"
praticamente la funzione non scrive nulla nelle variabili visto che se prima di chiamare la funzione gli assegno un valora poi dopo la funzione ci ritrovo quello...
Risolto... ovviamente avevo commesso un errore stupido... -___-
Kleidemos
31-08-2003, 12:42
Originariamente inviato da Dioveht
Risolto... ovviamente avevo commesso un errore stupido... -___-
cioe?
le variabili VolumeNameBuffer, FileSystemNameBuffer
devono essere array of Char;
vBulletin® v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.