Я хочу отправить WM_HOTKEY для захвата другим приложением с помощью глобального рабочего стола HotShortCut.
Ожидаемые ключи: CTRL + F10
Это единственный найденный способ вызвать захват WM_HOTKEY:
procedure TfmMain.ButtonTalkClick(Sender: TObject);
var
Article: TArticleBase;
Msg: TMessage;
begin
Article:= GetSelectedArticle;
if Article <> nil then
begin
Clipboard.AsText:= Article.SelectedText;
Msg.LParamLo:= MOD_CONTROL;
Msg.LParamHi:= VK_CONTROL or VK_F10;
PostMessage(HWND_BROADCAST, WM_HOTKEY, 0, Msg.LParam);
end;
end;
если я изменяю любое из значений Msg.LParamLo или Msg.LParamHi, WM_HOTKEY не запускается другим приложением.
Но используя этот способ, до того, как сообщение WM_HOTKEY будет перехвачено Методом:
procedure ManageHotKeyMsg(var Msg: TMessage); message WM_HOTKEY;
Выполнен «Диалог выполнения Windows» (сочетание клавиш «Ключ Windows» + R)
Как правильно передать Msg.LParamLo и Msg.LParamHi, чтобы убедиться, что я посылаю WM_HOTKEY + "CTRL + F10".