Forum: Win32/Win64 API (native code)
by MicMic,
2. Dez 2019
Ich hatte das ja getestet. Beitrag 4 und (6 als Abschluss) in diesem Thread.
Gehen nämlich nur 255. Aber irgendwo las ich mal, dass jemand mit irgendeinem Programm ein Dateiname erstellt hat, der weit mehr als 260 Zeichen hatte. Aber das habe ich nicht weiter verfolgt.
Das Konzept des Anwenders könnte man in Frage stellen. Mein Programm allerdings sollte funktionieren und nicht gleich...
Forum: Win32/Win64 API (native code)
by MicMic,
1. Dez 2019
Ich meine mit "Nein, wieso?" dass ich hier nicht in der Registry herum schreibe bzw. sie ändere :)
Forum: Win32/Win64 API (native code)
by MicMic,
1. Dez 2019
Nein, wieso? Ich wollt nur ganz klar verstehen, wie das nun läuft mit Dateinamenlängen usw.
So kann man evtl. Fehler abfangen bzw. diese besser identifizieren. Gerade hier sind Errorcodes nicht immer so, wie man sich das wünschen würde.
Forum: Win32/Win64 API (native code)
by MicMic,
1. Dez 2019
Da habe ich wohl jetzt die Prüfung bestanden :)
Danke für die Antwort
Wird wohl jetzt so sein. Also mit LongPathsEnabled=1 bzw. mit dem Prefix "\\?\".
Die frühere Variante ergabt bei meinen Tests ja, dass bei Ordnern noch etwas abgezogen wird, damit ein möglicher 8+3 Dateiname noch reinpassen kann. Was ja auch Sinn macht.
Jetzt habe ich wenigstens Durchblick erlangen *lach*
Also...
Forum: Win32/Win64 API (native code)
by MicMic,
1. Dez 2019
Also das mit dem "\\?\" ist mir ja bekannt. Jedoch habe ich es noch nicht überall im Einsatz (beim Programmieren).
Gehen wir die Sache noch mal durch :)
Nummer 1:
Obige Rechnung stimmt. Also rechnerisch würde unter C:\ eigentlich 256 Zeichen für ein Dateiname gehen (weil's 260 ergibt), jedoch sagt NTFS, bei 255 ist Schluss
Richtig?
Nummer 2:
Ohne diesem Registry Eintrag...
Forum: Win32/Win64 API (native code)
by MicMic,
30. Nov 2019
Ich habe mal getestet, weil ich erst mal verstehen will, wie es die ganze Zeit so ist.
Dateitest:
Maximal Dateinamenlänge im Hauptverzeichnis C (255 Zeichen)
+ C:\ (3 Zeichen) + NULL-Zeichen (1 Zeichen)
= 259 Zeichen
Warum nicht 260 (MAX_PATH) ?
Maximal Dateinamenlänge im Verzeichnis C:\Test (251 Zeichen)