- 101 名前:デフォルトの名無しさん [2006/02/10(金) 18:13:45 ]
- 改行が多いと怒られたので、かなりハショってます。
メッセージを送る側では procedure Thread.SendMsg(sClassName: String; nKind: Cardinal; pInfo: Pointer; nInfoSize: Integer); var begin Wnd := FindWindow(PChar(sClassName), nil); if (Wnd <> 0) then begin : SendMessage(Wnd, WM_COPYDATA, WPARAM(Wnd), LPARAM(@Cd)); end; とし、SendMsg('TForm', ....); と、使っています。で、 受け取る側(MDI子フォーム)では procedure WMCopyData( var sMsg: TWMCopyData ); message WM_COPYDATA; を、privateに宣言して procedure TForm.WMCopyData(var sMsg: TWMCopyData); : begin pMessage := nil; if (sMsg.CopyDataStruct.dwData = ID_TEST) then begin : : : end; としています。
|

|