Thema: Delphi Stringumwandlung

Einzelnen Beitrag anzeigen

Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.184 Beiträge
 
Delphi 12 Athens
 
#4

Re: Stringumwandlung

  Alt 3. Jan 2010, 11:05
Jupp, D7 nutzt Ansi (AnsiString und PAnsiChar) und D2010 Unicode (UnicodeString und PWideChar)



Delphi-Quellcode:
procedure WindowsNachrichtAn(Fensterklasse, Fenstername, Nachricht: WideString);
var
  CopyDataStruct: TCopyDataStruct;
  ReceiverHandle: THandle;
begin
  CopyDataStruct.dwData:= 0;
  CopyDataStruct.cbData:= (Length(Nachricht) + 1) * 2;
  CopyDataStruct.lpData:= PWideChar(Nachricht);



PWideChar(Msg.CopyDataStruct.lpData)
oder
Delphi-Quellcode:
procedure WindowsNachrichtAn(Fensterklasse, Fenstername, Nachricht: AnsiString);
var
  CopyDataStruct: TCopyDataStruct;
  ReceiverHandle: THandle;
begin
  CopyDataStruct.dwData:= 0;
  CopyDataStruct.cbData:= Length(Nachricht) + 1;
  CopyDataStruct.lpData:= PAnsiChar(Nachricht);



PAnsiChar(Msg.CopyDataStruct.lpData)
aus genau diesem Grund nutzt man für programmexternen Datenaustausch und Datenspeicherung nur statische Typen ... kein Integer, Cardinal, String, PChar und wenn Records, dann nur packed.
$2B or not $2B
  Mit Zitat antworten Zitat