Autor Beitrag
chaoslion
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 45


Delphi 2k6 Prof,C,C#,Delphi
BeitragVerfasst: So 07.05.06 15:59 
Hallo

Wie lese ich aus einem Pointer den Typ aus, und seinen Wert?
Beispiel Chat:
Ich hab eine Sendeprozedure:
ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
procedure send;
var
 da:pstring;
 la:string;
begin
  la:=edit1.Text;
  da:=@la;
  net.Send('192.168.0.2',0,da,sizeof(da),false);
//         ip        port data, size  guaranteed
end;

und diese wird beim ankommen aufgerufen:
ausblenden Delphi-Quelltext
1:
2:
procedure netReceive(Sender: TObject; Host: string; Port: Integer;
  Data: Pointer; Size: Integer);

So wie komme ich wieder an den Inhalt von Data ran??
habs so probiert:
ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
var
 str:string
begin
 str:=String(Data^);
..
end;

geht natürlich nicht..
mkinzler
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 4106
Erhaltene Danke: 13


Delphi 2010 Pro; Delphi.Prism 2011 pro
BeitragVerfasst: So 07.05.06 16:11 
Nimm statt
da:pstring;
ausblenden Delphi-Quelltext
1:
da:pchar;					



Zitat:
Wie lese ich aus einem Pointer den Typ aus,
garnicht, da ein Poiter auf einee Speicherstelle zeigt.
Zitat:
und seinen Wert?
mit ^ als postfix.

Zitat:
So wie komme ich wieder an den Inhalt von Data ran??

str:=Data^;
oder wenn als pchar:

ausblenden Delphi-Quelltext
1:
str := data;					

_________________
Markus Kinzler.