Einzelnen Beitrag anzeigen

Benutzerbild von jaenicke
jaenicke

Registriert seit: 10. Jun 2003
Ort: Berlin
9.586 Beiträge
 
Delphi 11 Alexandria
 
#2

AW: Compiler ersetzt Variable durch Konstante - AV zur Laufzeit

  Alt 12. Nov 2013, 14:11
Das ist as-designed. Es wird nur eine Referenz benutzt. Du kannst das aber so machen (ungetestet):
Delphi-Quellcode:
const
   defaultStrValue: String = 'Das ist ein String';
var
   myString: String;
   myWideChar: PWideChar;
begin

   myString := defaultStrValue;
   UniqueString(myString);
   myWideChar := PWideChar(myString);
   
   WinApiAufruf(myWideChar); // AV
end;
So musst du das auch bei CreateProcess machen, sonst knallt es bei Unicode, wenn du z.B. einen const Parameter an CreateProcess übergibst.
Sebastian Jänicke
Alle eigenen Projekte sind eingestellt, ebenso meine Homepage, Downloadlinks usw. im Forum bleiben aktiv!
  Mit Zitat antworten Zitat