Привет У меня проблемы с моим SendMessage
.Проблемы с IPC SendMessage
Это похоже на то, что сообщение никогда не достигает моей формы (я использую Winspector Spy, чтобы видеть, какие сообщения зарегистрированы в моей форме), что странно, потому что я shure. Я посылаю правильную Ручку для текущая форма.
SendMessage находится внутри dll, но это не должно иметь никакого отношения к этому.
//sStr is just an input where i type in the Handler address;
SendMessage(Integer(sStr),WM_COPYDATA, Integer(Handle),Integer(@copyDataStruct));
SendMessage возвращает 0 каждый раз.
На приемном конце:
procedure WMCopyData(var Msg: TWMCopyData); message WM_CopyData;
procedure TMainForm.WMCopyData(var Msg: TWMCopyData);
var
s : string;
begin
s := PChar(Msg.CopyDataStruct.lpData);
showmessage(s);
//Send something back
msg.Result := 2006;
end;
Я также пробовал другие подобные сообщения WM_CLOSE. Кто-нибудь знает, почему это не удается? Я использую Delphi 5.
Вы уверены, что вы передаете правую ручку окна для SendMessage? Сначала проверьте это. И я полагаю, что это обычное приложение. – Runner