Einzelnen Beitrag anzeigen

Benutzerbild von jaenicke
jaenicke

Registriert seit: 10. Jun 2003
Ort: Berlin
9.743 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
AppCentral
  Mit Zitat antworten Zitat