我正在尝试将密钥发送到Firefox中的另一个打开过程.我应该发送左Shift键,但这没有任何运气.
我试过谷歌搜索这些答案,但我最终得到的是使用掘金或使用常规班次的人的外部方法.我尝试了很多方法使用左移的Enum发送左移或Sendkey.Send("{LSHIFT}")更多,但没有一个对我有效.我想知道是否有任何合适的方式让我发送左Shift键.
到目前为止这是我的代码:
public static IntPtr HookCallback(int nCode, IntPtr wParam, IntPtr lParam)
{
if (nCode >= 0 && wParam == (IntPtr)WM_KEYDOWN)
{
int vkCode = Marshal.ReadInt32(lParam);
Keys pressed = (Keys)vkCode;
MessageBox.Show(pressed.ToString());
switch (pressed)
{
case Keys.Insert:
{
SendKeys.Send("{LSHIFT}");
}
break;
}
}
return CallNextHookEx(_hookID, nCode, wParam, lParam);
}
Run Code Online (Sandbox Code Playgroud)
我看过没有左移键的列表和列表,但无论哪种方式,它们都会弹出错误'无效键'.
谢谢.