Delphi-PRAXiS
Seite 2 von 2     12   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Dateien mit langen Pfaden bzw. Dateinamen kopieren (https://www.delphipraxis.net/53830-dateien-mit-langen-pfaden-bzw-dateinamen-kopieren.html)

Christian Seehase 24. Sep 2005 12:40

Re: Dateien mit langen Pfaden bzw. Dateinamen kopieren
 
Moin Himitsu,

ging bei mir definitiv nicht.
Ich habe mir nicht die genaue Anzahl der Zeichen gemerkt, aber bei einer gesamten Pfadlänge von etwas unter 130 Zeichen liess sich die Datei nicht mehr kopieren (im Explorer, XP Pro SP2).
Dummerweise ohne korrekte Fehlerangabe :?

himitsu 25. Sep 2005 15:07

Re: Dateien mit langen Pfaden bzw. Dateinamen kopieren
 
Ist ja wirklich eigenartig, denn beim Aufbau meiner Files-Unit hatte ich extra getestet, ob der FileNamePuffer der WinAPI auch in den Unicode-Versionen mit den 260-Chars arbeitet, da dises ja nirgendwo beschrieben ist.

Ich hatte nur manchmal ein Prolem bei den maximalen 259 Zeichen (ohne das abschließende #0) ... unter Umständen werden sowohl bei Ansi, als auch bei Wide maximal nur 258 Zeichen angenommen.

Getestet wurden damals von mir einige FAT12, FAT16, FAT32, NTFS4, NTFS5 und was mir sonst noch für Dateisysteme unter die Finger geraten sind und das Meiste davon war auf 'nem WinXP Pro ohne ServicePacks.

Christian Seehase 25. Sep 2005 15:11

Re: Dateien mit langen Pfaden bzw. Dateinamen kopieren
 
Moin Himitsu,

also ich hatte den Effekt unter W2K SP4 und WXP SP2.

Zitat:

Zitat von Himitsu
als auch bei Wide maximal nur 258 Zeichen angenommen.

was ja bei Wide auch logisch wäre, denn hier endet der String ja mit #00#00 (also zwei Nullbytes).

himitsu 25. Sep 2005 15:19

Re: Dateien mit langen Pfaden bzw. Dateinamen kopieren
 
Dat stimmt ja wiederum auch nicht,

den bei Wide sind es zwar zwei #0, allerdings zwei Bytes ... in WideChar gerechnet ist das aber auch nur ein Zeichen, womit man ja eigentlich wiederum auf die maximalen 259 WideChar-Zeichen kommen würde :gruebel:


I hab hier zwar 'nen Win2K-Rechner, allerdings kein Delphi zum testen, oder'n Prgramm, was das machen könnte.

Christian Seehase 25. Sep 2005 15:26

Re: Dateien mit langen Pfaden bzw. Dateinamen kopieren
 
Moin Himitsu,

Zitat:

Zitat von himitsu
Dat stimmt ja wiederum auch nicht,

den bei Wide sind es zwar zwei #0, allerdings zwei Bytes ... in WideChar gerechnet ist das aber auch nur ein Zeichen, womit man ja eigentlich wiederum auf die maximalen 259 WideChar-Zeichen kommen würde :gruebel:

Stimmt auch wieder. :wall:


Zitat:

Zitat von Himitsu
I hab hier zwar 'nen Win2K-Rechner, allerdings kein Delphi zum testen, oder'n Prgramm, was das machen könnte.

Wie schon weiter oben erwähnt:
Das Problem ist bei mir nicht in einem Delphi-Programm aufgetreten, sondern direkt im Explorer.
Anders gesagt: Windows hatte da schon ein Problem. :?

himitsu 25. Sep 2005 15:36

Re: Dateien mit langen Pfaden bzw. Dateinamen kopieren
 
Na ja, vielleicht war da auch nur'n Fehler in der Ansi-UnicodeConvertierung ... denn wenn es im Ansi funktioniert, dann sollte es doch auch im Wide laufen, denn Windows verwendet doch intern auch die Wide-Version ... jedenfalls werden die Daten im Dateisystem nur als Wide gespeichert?


Alle Zeitangaben in WEZ +1. Es ist jetzt 00:50 Uhr.
Seite 2 von 2     12   

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz