Unicode-Dateinamen unter FAT-32?

Soweit ich weiß, unterstützt NTFS Unicode-Dateinamen (UTF-16, wie Micorsoft behauptet?).

Die offizielle MSDN-Dokumentation ist jedoch sehr vage, welche Codepage (n) zum Speichern von Dateinamen (Dateipfaden) auf FAT-32 verwendet wird.

Hier steht dasOEM-Codepage (CP437, nehme ich an) wird zum Speichern von Dateinamen verwendet:http://msdn.microsoft.com/en-us/library/windows/desktop/dd317748.aspx

Aber hier stellt sich heraus, dass es anders sein kannOEM-Codepages mit CP437 als einer von ihnen:http://msdn.microsoft.com/en-us/library/windows/desktop/dd317752.aspx

Und wir alle mögen jetzt die Dienstprogrammemontieren Unterstützt viel mehr verschiedene Codepages für FAT, als nur OEM-Codepages.

Wie lautet die aktuelle Cdepage für FAT-32-Dateinamen? Es hängt von der System-Codepage zum Zeitpunkt der Erstellung des FAT-Volumes ab. Kann FAT echte Double Byte Character Set-Codepages wie UTF-16 unterstützen? Oder sind Codepages mit Multibyte-Zeichensätzen wie UTF-8 das Limit?

Und spezifischere Frage:Was passiert, wenn ich die Funktion CreateFileW verwende (die laut MSDN UTF-16 als Dateinamen-Codepage verwendet), um eine Datei auf einem FAT-32-Volume zu erstellen?

Antworten auf die Frage(2)

Ihre Antwort auf die Frage