Wo hast die diese Funktion (lstrcpynW) ausgegraben. Ist mir gänzlich unbekannt (OK, das will nichts heißen) UND ich find sie in meinem Delphi nicht.
Vorläufig habe ich die Sache folgendermaßen gelöst:
Delphi-Quellcode:
function stringrepl(var myStr: Array of WideChar; myStrSize: smallint): smallint;
var
temp: widestring;
begin
temp:= 'Hallo Welt!';
StrToArray(myStr, temp);
result:= 42;
end;
procedure StrToArray(var myArr: Array of WideChar; myStr: WideString);
var
iArrSize, iStringSize, i: integer;
begin
iArrSize:= Length(myArr)-1;
iStringSize:= Length(myStr);
for i:= 0 to Min(iArrSize, iStringSize) -1 do
begin
myArr[i]:= WideChar(myStr[i+1]);
end;
myArr[Min(iArrSize, iStringSize)]:= WideChar(#0);
end;
Da ich diese Übergabe öfters brauche hab ich sie in ne Funktion ausgelagert. Meine Aufrufende Anwendung kommt nur mit wchar_t myStr[xx] zurecht.
Ciao