Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.04.04;
Скачать: CL | DM;

Вниз

Обработка сообщения с приемом данных   Найти похожие ветки 

 
-=GaLaN=- ©   (2004-01-22 21:14) [0]

У меня есть процедурка у формы Form1:
procedure WMCopyData(var Msg: TWMCopyData); message WM_COPYDATA;
Я ей кидаю сообщение и передаю содержимое Form1.Edit1.Text:
SendMessage(Form1.Handle, WM_COPYDATA, 0, integer(Form1.Edit1.Text));

Как мне принять эту строку в процедуре WMCopyData, когда мне передается структура TWMCopyData, как мне из этой структуры выцепить строку?


 
MBo ©   (2004-01-23 16:30) [1]

ты совершенно неправильно делаешь. Видимо, хелп не читал и в описание CopyDataStruct не заглядывал

передатчик

procedure TForm5.Button1Click(Sender: TObject);
var Data: TCopyDataStruct;
   s:String;
begin
 s:=Memo1.Lines.Text;
   Data.dwData := 0;
   Data.cbData := Length(s);
   Data.lpData := @s[1];
   SendMessage(h, WM_COPYDATA,0,integer(@Data));
 end;
end;

приемник

procedure TFormA.WmCopyData(var Message: TMessage);
var s:string;
begin
SetLength(s, PCopyDataStruct(Message.LParam)^.cbData);
Move(PCopyDataStruct(Message.LParam)^.lpData^,s[1],Length(s));
Memo1.Lines.Text:=s;
end;


 
-=GaLaN=- ©   (2004-01-23 17:27) [2]

Спасибо! Это работает!



Страницы: 1 вся ветка

Текущий архив: 2004.04.04;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.034 c
1-1079637510
maxXP
2004-03-18 22:18
2004.04.04
Как определить запущена ли программа...


14-1078769139
Patriarch
2004-03-08 21:05
2004.04.04
Смайлики


1-1079594264
Infom
2004-03-18 10:17
2004.04.04
dxTreeList


14-1078861792
LAMER-XP
2004-03-09 22:49
2004.04.04
исходник тестера


14-1079010513
SPeller
2004-03-11 16:08
2004.04.04
Абсурд с явкой на выборы