Einzelnen Beitrag anzeigen

hadschi92

Registriert seit: 25. Okt 2006
83 Beiträge
 
Delphi XE3 Professional
 
#3

Re: ScktComp unter Delphi 2009 anpassen

  Alt 6. Apr 2009, 17:58
Um nicht alles erklären zu müssen: https://forums.codegear.com/thread.jspa?messageID=70567

Dort wird auch eine Lösung beschrieben, jedoch seinen gesamten Quelltext alter Projekte deshalb zu ändern ist nicht gerade produktiv. Daher könnte man die ScktComp.pas so anpassen, dass Strings von vorne herein gleich richtig konvertiert werden.

Edit: ReceiveText z.B. ist kaputt, in der ScktComp-Unit sieht die Funktion so aus:
Delphi-Quellcode:
function TCustomWinSocket.ReceiveText: string;
begin
  SetLength(Result, ReceiveBuf(Pointer(nil)^, -1));
  SetLength(Result, ReceiveBuf(Pointer(Result)^, Length(Result)));
end;
Ich müsste also zuerst mit ReceiveBuf das Empfangene einlesen, dann in einen AnsiString schreiben und den dann in Unicode konvertieren...
Könnte das danach so aussehen? Stimmt der Code dann auch?
Delphi-Quellcode:
function TCustomWinSocket.ReceiveText: string;
var S: AnsiString;
begin
  SetLength(S, ReceiveBuf(Pointer(nil)^, -1));
  SetLength(S, ReceiveBuf(Pointer(S)^, Length(S)));
  Result := String(S);
end;
Ok, wahrscheinlich sind noch mehr Funktionen bisschen verbuggt, nur weiß ich nicht welche...
  Mit Zitat antworten Zitat