Also direkt über die Win
API kann man bis Windows 8.1 nur Pfade mit der Länge von MAX_PATH kopieren. Es gab aber die bereits erwähnte Alternative mit \\?\ um Pfade zu kopieren die länger sind als MAX_PATH.
... was auch über die
WinAPI erfolgt - insofern widerspricht der zweite Satz dem ersten
.
Probiert habe ich es selbst auch nie, aber da ich weiß, dass Total Commander mit Pfaden länger 256 Zeichen umgehen kann (geht IIRC bis 1024) und der natürlich mit der
WinAPI arbeitet, kann ich mit Sicherheit sagen, dass es funktioniert. Nur mal ein Beispiel:
CopyFileEx:
Zitat:
In the
ANSI version of this function, the name is limited to MAX_PATH characters. To extend this limit to 32,767 wide characters, call the
Unicode version of the function and prepend "\\?\" to the path.
Es muss also die
Unicode-Variante der Funktion gerufen werden, der Prefix muss vorhanden sein, und natürlich darf man den String nicht auf MAX_PATH kürzen. Und wie ich schon sagte können möglicherweise nicht alle
API-Funktionen mit den überlangen Pfaden umgehen; LoadImage, LoadIcon fallen mir da spontan ein.
Grüße
Dalai