c# winforms - 是否可以在多个应用程序上使用全局热键

c# winforms - is it possible to use global hotkey on multiple applications

在 PDF reader 中,我们使用右箭头按钮切换到下一页。在我自己的 winforms 应用程序中,我将右箭头键分配给了全局热键,当我按下右箭头键时,它显示 "hello world" 用于试用目的。

在这种情况下,当我打开 PDF reader 并按向右箭头时,它显示 "hello world" 但它不会切换到下一页。我希望当我按下 PDF reader 上的右箭头按钮时,都切换到下一页并说 "hello world" 因为我自己的 winform 应用程序中的全局热键分配。

当我在Google上搜索时,我找不到关于这种情况的文章。我怎样才能做到这一点?

基于吉米的例子:

public YourClass()
{
    InitializeComponent();
    //const int id = 0; // The id of the hotkey.
    // For eaxple hot key F5
    RegisterHotKey(Handle, 0, (int)KeyModifier.None, Keys.F5.GetHashCode());
}
protected override void WndProc(ref Message message)
{
    base.WndProc(ref message);
    if (message.Msg == 0x0312)
    {
        var id = message.WParam.ToInt32();
        if (id == 0)
        {
            /*
             * Write a method hee what you want to do.
            */
            // Let the command press the right arraybotton instead.
            SendKeys.SendWait("{RIGHT}");
        }
    }
}