Einzelnen Beitrag anzeigen

EWeiss
(Gast)

n/a Beiträge
 
#17

Re: TStringList Max String länge

  Alt 11. Mär 2009, 22:39
Zitat von Luckie:
Zitat von EWeiss:
Ich übergebe den Pfad nun mit GetShortName ist das einzigste was mir einfällt.
Du musst aber aufpassen:
Zitat von Windows PSDK:
When an application calls this function and specifies a path on a volume that does not support 8.3 aliases, the function fails with ERROR_INVALID_PARAMETER if the path is longer than 67 bytes.
Man kann die Unterstützung für kurze Dateinamen unter NTFS abschalten. Du solltest auf alle Fälle den Fehler abfangen.
Danke für die Infos war mir nicht bekannt .. gut zu wissen.
Denke das müßte reichen.
Delphi-Quellcode:
procedure SearchFiles(PluginType: byte;
                      path: string;
                      recurse: BOOL; var List :TStrings);
var
  sr : TSearchrec;
  tmpPath: string;

begin

 if (Path[length(path)] <> '\') then
    path := path + '\';

 try
     tmpPath := GetShortName(Path);
 except
     if GetlastError = ERROR_INVALID_PARAMETER then
       tmpPath := Path;
 end;
@Mutze1
1. da war ich schon daher auch die Idee mit GetShortName
2. Habe es mal mit SafeLoadLibrary() versucht das gleiche problem
Die DLL ist mit Petite Kompremiert http://www.un4seen.com/petite/
dieser scheint die Datei zerschossen zu haben oder es ist einfach nicht möglich diese dann mit LoadLibrary zu laden.

trotzdem danke muss halt alles versuchen.

gruss Emil
  Mit Zitat antworten Zitat