Einzelnen Beitrag anzeigen

berens

Registriert seit: 3. Sep 2004
434 Beiträge
 
Delphi 10.4 Sydney
 
#4

Re: Exception beim Ermitteln des TEMP-Ordners unter Delphi 2

  Alt 15. Apr 2010, 15:20
@DeddyH: Funktioniert einwandfrei, vielen Dank! Edit: Achtung Siehe unten!

@himitsu: Genau sowas habe ich befürchtet. Wie hätte man denn jetzt idealerweise den Rückgabewert geprüft?

Wenn ich das richtig verstehe, hat Delphi bis 2007 (2009?) bei SizeOf -in diesem Fall- den identischen Wert zurückgegeben wie length, und es war -in diesem Fall- egal was man verwendete. Oder war das Beispiel auf http://www.swissdelphicenter.ch/de/showcode.php?id=385 mit dem SizeOf einfach schon immer falsch?

Wenn ich jetzt all meine Quellcodes durchsehe und will die 2010 "fit" machen, worauf muss ich also achten? Überall da wo mit Char und SizeOf oder Length gearbeitet schauen ob das stimmt? Wegen Unicode und so?



Edit: Achtung, DeddyH: Bei deinem Code sind hängt noch #0#0 an dem String dran. Damit kann ich also nicht tmpString := GetTempFolder + 'temp.tmp' machen; der String verändert sich nicht mehr. Mit:

Delphi-Quellcode:
SetLength(Result,GetTempPath(0, nil) + 1);
GetTempPath(Length(Result),PChar(Result));
Result := trim(Result);
geht es, aber es ist die Frage, ob man nicht direkt mit -1 statt +1 arbeiten müsste/sollte? Keine Ahnung...
  Mit Zitat antworten Zitat