Привет У меня проблемы с моим SendMessage
.
Похоже, что сообщение никогда не достигает моей формы (я использую Winspector Spy, чтобы увидеть, какие сообщения зарегистрированы в моей форме), что странно, потому что я уверен, что отправляю на правильный дескриптор для текущего форма.
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.