| |
|
|
|
Beschreibung:
GetVolumeInformation liest Laufwerksinformationen über das angegebene Laufwerk aus.
Deklaration:
Def @GetVolumeInformation(8) !KERNEL32,GetVolumeInformationA
Parameter:
1.Parameter: Adresse eines Strings oder Bereichsvariable mit einem String, der das Rootverzeichnis des Abzufragenden Laufwerks enthält. Kann 0 sein - dann wird das aktuelle Rootverzeichnis genommen. 2.Parameter: Bereichsvariable, die den Namen des Labels (der Festplatte, Diskette, CD... ) empfängt. 3.Parameter: Länge des Bereiches in Parameter 2 als LongInt. 4.Parameter: Bereichvariable, die die Seriennummer des Labels empfängt (kann 0 sein). 5.Parameter: 4 Byte Bereichvariable, die die maximale Länge eines Dateinamens empfängt (kann 0 sein). 6.Parameter: 4 Byte Bereichvariable, die Flags über das Dateisystem empfängt (kann 0 sein). => -$2 = Groß- und Kleinschreibung von Dateinamen wird erhalten. -$1 = Groß- und Kleinschreibung von Dateinamen wird berücksichtigt (z.B. bei der Suche oder dem Überschreiben). -$4 = Unicode Dateinamen werden unterstützt. -$8 = Accesslisten werden unterstützt / gefordert (z.B. bei Windows2000) -$10 = Unterstützt Dateikomprimierung. -$8000 = Komprimierter Datenträger. 7.Parameter: Bereichsvariable, die den Namen des Dateisystems empfängt (kann 0 sein). 8.Parameter: Länge des Bereichs in Parameter 7.
Rückgabewert:
1 wenn alle gefragten Informationen geliefert wurden. Ansonsten 0.
Beispiele:
KompilierenMarkierenSeparierenDeclare x&,y&,bereich#,text$,bereich2#
Dim bereich#,1024
Dim bereich2#,256
Def @GetVolumeInformation(8) !"KERNEL32","GetVolumeInformationA"
Windowstyle 31
Windowtitle "Laufwerksnamen"
Window 0,0-640,440
String bereich2#,0="A:"
Whileloop 16
x&=@GetVolumeInformation(bereich2#,bereich#,1024,0,0,0,0,0)
If x&
text$=@String$(bereich#,0)
Print @String$(bereich2#,0)+" = "+text$
EndIf
Byte bereich2#,0=@Byte(bereich2#,0)+1
EndWhile
Dispose bereich#
Dispose bereich2#
While 0=0
Waitinput
Wend
|
|
|
| |
|
|