Hi Tom,
[...] much stuff!
how very true.
Speziell der Unterscheid zwischen (FAT 12, FAT16) | (FAT32) ist doch erheblich.
Eigentlich nicht. Die wesentlichen Unterschiede sind, dass ...
* der Bootblock zusätzliche Datenfelder hat,
* es nach dem Bootsektor einen zweiten Sektor mit Systeminformationen gibt
* das Root-Verzeichnis nicht fest allokiert ist, sondern auch wie eine
Datei verwaltet wird
* und die FAT natürlich 32bit-Einträge hat (anstatt 12 oder 16)
Jedenfalls bleiben nach Deinem Vortrag also nur die Verzeichniseinträge und die dazugehörigen langen Dateinamen zurück, die ja nach Lesen der MS-Spec auf in UTF-8 vorliegen können, ...
Nein. Wenn Microsoft in irgendwelchen Windows-Interna von Unicode redet, dann ist das immer UTF-16. Merkt man auch, wenn man sich die entsprechenden Datenstrukturen mal im Hex-Editor anschaut: Da sieht man immer ein ASCII-Zeichen und ein Nullbyte im Wechsel, entsprechend der UTF-16-Darstellung.
und daher bei einer effektiven Länge von 255 Zeichen (das habe ich jeztzt nicht genau nachgeschaut, ob es denn nur 248 sind) durchaus 1kByte Speicherplatz belegen können...
Wir wollen mal nicht übertreiben. ;-)
Die maximale Länge ist 255 Zeichen, siehe Seite 29 der Spec. Da 13 Zeichen pro Directory-Record gespeichert werden können, ergibt das maximal 255/13 Records, aufgerundet sind das 20. Einer kommt noch dazu für den Shortname-Eintrag, macht also "allermaximalstens" 672 Byte für einen vollständigen Verzeichniseintrag. Immerhin, auch schon eine Menge Holz.
Da ich TEMPNAM() benutzt habe mit Präfix "check_" könnte das schon ein Grund für eine Zeitverzögerung sein. Allerdings nicht für die derartig merkliche. Das muss noch einen anderen Grund haben. Den find ich aber auch noch :-))
Ich hoffe es doch und bin gespannt.
So long,
Martin
Computer funktionieren grundsätzlich nicht richtig.
Wenn doch, hast du etwas falsch gemacht.