关于全局快捷键的问题,模拟键盘自动击键

l274747948 2014-07-08 05:36:43
现在一应用程序 有几个快捷键

下列快捷键为全局快捷键 就是在最小化 或托盘状态下 按快捷键也一样起作用
control+shift+alt+Y
control+shift+alt+U
control+shift+alt+I
control+shift+alt+O
control+shift+alt+P


经测试: 这样不管用

Process[] thisproc = Process.GetProcessesByName("SendKeysForm");
thisproc[0].StartInfo.WindowStyle = ProcessWindowStyle.Normal;
SendKeys.SendWait("^+%(P)");



测试2 :注册全局快捷键 发现 最多三个键 四个键是不行的

public Form1()
{
RegisterHotKey(Handle, 500,7, Keys.P);
}

[System.Runtime.InteropServices.DllImport("user32.dll")] //申明API函数
public static extern bool RegisterHotKey(
IntPtr hWnd, // handle to window
int id, // hot key identifier
uint fsModifiers, // key-modifier options
Keys vk // virtual-key code
);

public enum KeyModifiers
{
None = 0,
Alt = 1,
Control = 2,
Shift = 4,
Windows = 8
}




请问哪位大神知道啊 如何模拟按下全局 快捷键啊


小弟在此相当感谢您~~~急用
...全文
199 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
save4me 2014-07-10
  • 打赏
  • 举报
回复
试过了,键盘真的没响
引用 4 楼 Z65443344 的回复:
你自己试过control+shift+alt+Y这样按,键盘不响?
save4me 2014-07-10
  • 打赏
  • 举报
回复
参考: Register hotkeys in .NET - combination of three/four keys 里面提到了使用KeyState,也就是CodeProject的开源项目Global Mouse and Keyboard Library可以记录键盘按下了哪些键,就是可以获取当前处于按下的键有哪些,没有键数限制。另外还可以获取鼠标信息。下载了源码编译的示例程序, WIN7 X86下工作正常。
於黾 2014-07-09
  • 打赏
  • 举报
回复
你自己试过control+shift+alt+Y这样按,键盘不响?
sjrw96004 2014-07-08
  • 打赏
  • 举报
回复
听前辈说过 control+字符 shift+字符 alt+字符 windows键盘布局中 通常 control+shift control+alt 只能配合del、enter等执行键
l274747948 2014-07-08
  • 打赏
  • 举报
回复
跪求~~~~~~~~
Ptrtoptr 2014-07-08
  • 打赏
  • 举报
回复
键盘不能同时按下多个键,这是硬件上的缺点

110,477

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧