что не так делаю ?
.h-файл:
const WM_USERMESSAGE = WM_USER + 245;
....
private:
void __fastcall WMUserMessage(TMessage& Msg);
BEGIN_MESSAGE_MAP
VCL_MESSAGE_HANDLER(WM_USERMESSAGE, TMessage, WMUserMessage);
END_MESSAGE_MAP(TForm)
.c-файл:
упаковка:
void __fastcall TFormStart::ServerSocket1ClientConnect(TObject *Sender,
TCustomWinSocket *Socket)
{
String S = Socket->RemoteAddress; // получаем AnsiString — адрес клиента
String *P = &S; // получаем ссылку
PostMessage(Handle,WM_USERMESSAGE, (WPARAM)P, 0); // передаем ссылку
}
распаковка:
void __fastcall TFormStart::WMUserMessage(TMessage& Msg)
{
AnsiString *P = new AnsiString();
AnsiString *P = (AnsiString*)Msg.WParam;
String S = *P; // что то получаем, но не адрес клиента
if(Msg.LParam==0)
ListBox1->Items->Add(S);
}
12.07.10 13:13: Перенесено модератором из 'C/C++' — Кодт