Einzelnen Beitrag anzeigen

Benutzerbild von MuTzE.Y85
MuTzE.Y85

Registriert seit: 11. Apr 2006
152 Beiträge
 
#3

AW: Problem mit HKStreams und Delphi 2010 (EOutOfMemory)

  Alt 26. Jul 2010, 10:50
So hier steht die Lösung:
Anwendungen für Unicode anpassen

Habe den Code so geändert:
Delphi-Quellcode:
// Lesen alt
function THKStreams.ReadStr(Stream: TStream): String;
var
  I: Word;
  S: String;
begin
  Stream.ReadBuffer(I, SizeOf(I));
  Setlength(S, I);
  Stream.ReadBuffer(PChar(S)^, I);
  Result := S;
end;

// Angepasst für Delphi 2010 (Unicode)
function THKStreams.ReadStr(Stream: TStream): String;
var
  I: Word;
  S: String;
begin
  Stream.ReadBuffer(I, SizeOf(I));
  Setlength(S, I);
  Stream.ReadBuffer(Pointer(S)^, I * SizeOf(Char));
  Result := S;
end;


// Schreiben alt
procedure THKStreams.WriteStr(S: String; Stream: TStream);
var
  I: Word;
begin
  I := Length(S);
  Stream.WriteBuffer(I, SizeOf(I));
  Stream.WriteBuffer(PChar(S)^, I);
end;

// Angepasst für Delphi 2010 (Unicode)
procedure THKStreams.WriteStr(S: String; Stream: TStream);
var
  I: Word;
begin
  I := Length(S);
  Stream.WriteBuffer(I, SizeOf(I));
  Stream.WriteBuffer(Pointer(S)^, I * SizeOf(Char));
end;
LAN-PC: C2Q Q9550 @ 4004 MHz @ 1.232 V @ Mugen 2 | DFI LANParty JR P45-T2RS | G.Skill 4GB DDR2-1000 CL5 | ZOTAC GTX 280 @ GTX 285 @ 1.06 V | WD Caviar Blue 320GB / WD Caviar Black 640GB | BeQuiet DPP P7 450W | Antec Mini P180

Geändert von mkinzler (26. Jul 2010 um 10:53 Uhr) Grund: Code-Tag durch Delphi-Tag ersetzt
  Mit Zitat antworten Zitat