草庐IT

c# - 在 Windows 将其注册为击键之前拦截 USB 键盘数据

我一直在网上搜索一个非常具体的问题。我正在尝试做的是将两个键盘(普通USBqwerty键盘)通过两个不同的USB端口连接到我的PC,从中我可以选择哪个键盘处于“事件”状态并用于书写,而另一个键盘将用于我的应用程序中的不同命令并且无法使用。基本上拦截/断开Windows读取输入数据并将其视为特定USB端口上的击键的部分,而是给我使用数据。有什么方法最好在C#中执行此操作? 最佳答案 有一篇文章介绍了如何在C#中使用RawInput来检测连接了多个键盘时击键的来源。这可以帮助您在C#应用中配置一个键盘用于正常打字,另一个键盘用于特殊用途

windows - 如何使用 autohotkey 更改键以更改 Windows 10 中的桌面?

Windows10终于有了多桌面,你可以通过ctrl+win+right(或者left)键。这是一个不错的功能,但您需要用两只手来切换桌面。我正在尝试使用autohotkey映射这样的键,这样我就可以只用一只手,而将另一只手放在鼠标中..ctrl+mousewheelup-->ctrl+win+rightctrl+mousewheeldown-->ctrl+win+left出现消息框,因此ctrl+向上滚动可以正常工作,但它不会切换桌面。~LControl&WheelUp::MsgBox,Gotodesktopright.Send,{ctrlup}{lwinctrlrigh}retur

windows - 如何禁用特殊键盘键?

我正在寻找在后台运行并阻止我键盘上的特殊键(计算器、静音等)的脚本或程序对我来说,我尝试了sharpkeys但没有在我的键盘上检测到这些键,我的键盘上的键ID是173用于静音,如果我发现任何东西可以用ID阻止它们,我可以获得其他ID。附言我不太了解编程,很可能不知道我在做什么,我正在寻找任何人的基本帮助。谢谢! 最佳答案 TL;DR要禁用所有“特殊键”,您可以更改人机界面设备访问Windows服务启动类型Automatic到Manual(或Disabled,以防安装了一些其他软件导致它在设置为Manual时仍然启动).警告:这可能会

windows - PhoneGap Build - Windows 键不在选择框中

我对Adob​​e的PhoneGap构建有疑问。只是不太清楚是服务本身的问题还是我的数据的问题。对于iOS和Android,从调试到发布都没有问题-一切都很完美。现在我想发布Windows应用程序作为一个版本,但是这里不能选择键。我已经尝试过多次添加新key,也是通过“添加key...”功能。作为标签,我尝试了一些东西(包系列名称(PFN)、包/标识/名称、包/属性/PublisherDisplayName等),但没有成功。如果我不介意的话,到目前为止,一周前就已经奏效了。截图:PhoneGapBuildInterface有人知道吗?提前致谢。:)(对不起,我的英语不好,我已经被谷歌翻

windows - 使一个粘滞键在 Windows 上不粘滞

我根本不使用正确的控制键,我喜欢将它用作一些自定义功能的方便放置的热键,我可以使用Autohotkey轻松完成。问题是为了方便起见我也使用粘滞键,如果我点击右控制然后激活由Autohotkey绑定(bind)的新功能,但控制键也会进入粘滞状态(因为它是在操作系统级别完成的),所以它会意外地影响按下的下一个键。有没有办法以某种方式告诉Windows(也许使用额外的工具)我确实希望所有修饰符都具有粘性,除了正确的控制键? 最佳答案 虽然我不完全确定,但我想知道通过注册表映射的键(在系统级别映射)是否可能不再被视为修饰符......我不完

windows - 如何使用 SendKeys 使类型转换的变量显示为键而不是值

$a=[char]65$w1=New-Object-ComObjectwscript.shell;$w1.AppActivate('Untitled-Notepad')Sleep1Write-Host$a$w1.SendKeys($a);在PowerShell脚本中,我尝试使用SendKeys命令通过类型转换变量$a使字母A出现在记事本中作为值为65的[char]。当我运行这条线时,这给了我预期的结果:Write-Host$a(A出现在PowerShell中)但是每当运行以下行时:$w1.SendKeys($a);数字65被放入记事本而不是A。为什么这两行在给定相同参数时产生不同的输出

python - pyHook + pythoncom 在按下太多键后停止工作 [Python]

这是我的脚本:importpyHookimportpythoncomhookManager=pyHook.HookManager()defonKeyboardEvent(event):ifevent.KeyID==113:#F2#dosomething#returnTruehookManager.KeyDown=onKeyboardEventhookManager.HookKeyboard()pythoncom.PumpMessages()在键盘事件上指定的键,或者我的脚本中的F2键,被多次按下后,脚本停止工作...谁知道为什么?或者如何解决?每次发生这种情况我都必须重新启动脚本,而且

windows - 有没有办法以编程方式打开/关闭粘滞键?

我想从程序中启用/禁用Windows粘滞键功能。有没有办法通过调用命令行脚本或使用vbscript或类似工具来实现? 最佳答案 是的。调用SystemParametersInfo以SPI_SETSTICKYKEYS作为第一个参数。不过,如果您使用.NET,则需要使用P/Invoke来调用Win32API函数。 关于windows-有没有办法以编程方式打开/关闭粘滞键?,我们在StackOverflow上找到一个类似的问题: https://stackoverf

c++ - 是否可以通过 Windows 键(可能没有钩子(Hook))捕获 Windows 开始菜单弹出窗口?

我一直在研究输入事件系统。我映射了我自己键盘上的所有键、扫描码等,包括两个Windows键。当我按下它们时,程序成功地为它们接收了不同的按键事件,没有任何问题。然而,当我松开按键时,“开始”菜单会弹出,在Windows模式下隐藏程序,甚至在全屏模式下将其最小化。所以我的问题在于抑制它。Arma2,一款军事模拟器/游戏,允许将命令毫无问题地映射到这些键上。我必须在哪里catch那个事件?只要它有焦点,我可以为我自己的窗口做吗?只要它正在运行,我是否会被禁用的win-key卡住?还是别的?谷歌搜索主要是没有结果,因为Windowskey也指的是产品key,当我确实找到一些东西时,它通常会完

C++ Keyboard Hook - 退出程序但也防止键在别处被处理

我正在编写一个钩子(Hook),它必须在按下设置键时退出程序,并且也不允许在别处处理该输入。通常你会在钩子(Hook)函数中返回一个非零输入,这样输入就不会在别处使用但是因为我正在使用exit(0)我无法阻止键盘输入干扰可能在程序后面的其他应用程序.有人对我如何阻止输入有任何想法吗? 最佳答案 在你的钩子(Hook)函数中正常处理钩子(Hook)(带有'consumed'标志)。您唯一需要做的就是不调用同步函数exit(0),而是调用PostQuitMessage(0)。PostQuitMessage(0)将发布WM_QUIT消息,