草庐IT

键盘模拟

全部标签

c# - 如何创建通用键盘快捷键?

我在网上搜索过这个,但什么也找不到。我想做的是创建一个我可以在所有应用程序中使用的键盘快捷键。一个通用的键盘快捷键,这样当我在任何应用程序中按下Ctrl+Shift+X时,它都会执行一段代码在C#中创建。例如,当我在Skype中时,我会选择文本并按Ctrl+Shift+X(或任何其他组合键),它会将文本的颜色从黑色更改为蓝色。这只是一个例子,试图解释我想做什么。我想我必须导入一个DLL并编辑它(也许是user32.dll?)我只是在猜测。我不知道如何做到这一点,所以任何帮助将不胜感激!提前致谢:)PS:我使用的是Windows窗体应用程序,.NETFramework4.0。不清楚我正在

windows - Windows 用户模拟有哪些副作用?

在Windows中,程序可以通过调用LogonUser来获取用户访问token,OpenProcessToken、SSPI函数和其他一些函数。获得token后,您可以将此token传递给许多函数,以便以该用户的身份执行操作。这类操作通常会对“父”进程产生副作用吗?例如,您可以通过LoadUserProfile加载用户的配置文件(注册表设置等).除此之外,LoadUserProfile会将用户的注册表配置单元加载到HKEY_USERS并将HKEY_CURRENT_USER映射到它。从父进程的角度来看,这会改变HKEY_CURRENT_USER吗?或者它只是在作为该用户通过CreatePr

windows - 使用 AutoHotKey(或其他工具)创建自定义键盘布局

我想创建一个自定义键盘布局,主要用于键入unicode数学符号。我需要的符号集非常多,我想出的方案涉及多种布局和特殊组合。我输入一次`(反引号),但我得到了一个特殊字符,我们将用*表示它。通过键入额外的键,我可以获得与特定主题相关的特定键盘布局。(我想用特殊符号替换反引号,这样我就可以记住它是某种控制代码。通过键入它两次,我得到一个正常的反引号)下面是一些示例映射:*s->Settheorylayout:[->∈(elementof)o->∅(emptyset)*r->Generalmath:s->∫(integralsign)S->∬(doubleintegralsign)*e->M

linux - Sublime Text - 如何在 Linux 或 Windows 上获取 OSX 键盘快捷键

在OSX上的SublimeText3中,我可以使用键盘快捷键“command+左/右箭头”跳转到一行的开头/结尾,以及“command+shift+左/右箭头”从我所在的点到行的开头/结尾进行选择。有没有办法在linux或windows上分别以“ctrl+左/右箭头”和“ctrl+shift+左/右箭头”的形式获得相同的快捷方式? 最佳答案 ⌘←和⌘→是built-inOSXshortcuts,并且不是Sublime的一部分。但是,您可以通过覆盖Ctrl←/→和CtrlShift←/→使用自定义键盘映射。默认情况下,使用Ctrl←/

c++ - 从模拟用户下启动的某些系统默认 .lnk 文件的问题

我正在编写32位服务应用程序,我希望能够在其中为登录用户启动“开始”菜单项。我确实设法通过模拟用户并使用CreateProcessAsUser和命令行启动选定的.lnk文件来完成此任务:%windir%\system32\cmd/c"start/b/i""""".它适用于几乎所有快捷方式,除了Accessories文件夹中的一堆系统快捷方式(例如StickyNotes.lnk、SnippingTool.lnk)。在启动截图工具期间,我从cmd收到带有此错误的消息框:Windowscannotfind'C:\ProgramData\Microsoft\Windows\StartMenu\

c# - 使用 C# 和 Win API 移动屏幕键盘 (osk.exe)

我制作了这个小的.ps1脚本,因为它允许我在不使用编译器(至少直接使用)的情况下运行C#。我想移动使用cmd/cosk.exe打开的“辅助功能屏幕键盘”,因为我不能真正使用TabTip-平移触摸屏键盘在Win8+上。由于屏幕键盘不像平移键盘那么漂亮,我想移动键盘到所需位置并调整它的大小。我注意到OSK有一个子窗口(OSKMainClass→DirectUIHWND),所以我为此努力了,但没有运气。另一方面,用于单个窗口的相同代码适用于记事本并正确放置它并调整它的大小。我将Process.Start()放入if中,以便它返回一些反馈,因此我看到它找到了子窗口-这很好。但是,它没有移动它。

c++ - 是否可以模拟进程的访问 token ?

模拟用户的典型方法是调用LogOnUser()以获取用户的访问token并将此token传递给ImpersonateLoggedOnUser()以进行模拟。但是,这只会模拟调用线程的用户。有没有办法模拟或更改进程的访问token(主token)?支持我正在访问网络共享,并且生成了多个线程来访问该网络共享的不同部分。我是否必须在所有这些线程中模拟远程用户(有权访问该共享)?还是有一种方法可以先“模拟”进程,以便在生成新线程时,它们已经通过自动继承进程主token获得了访问权限? 最佳答案 不,这是不可能的。NtSetInformati

windows - 如何在不触发 LLMHF_INJECTED 标志的情况下发送鼠标/键盘输入?

目前我使用SendInput()功能,但如果您安装了一个低级别的鼠标Hook,则设置LLMHF_INJECTED表示输入已注入(inject)到流中。有没有一种方法可以发送鼠标和键盘输入,以便不设置LLMHF_INJECTED? 最佳答案 RaymondChen将此类问题描述为军备竞赛。假设S是欺骗此类注入(inject)的技术。然后就会看到这里的问题,如何检测S是否用于注入(inject)鼠标/键盘输入?此标志的要点是Microsoft认为欺骗是可能的,但可以检测到。 关于window

c++ - 按住时键盘输入犹豫?

有谁知道为什么在按住键盘键并尝试处理时会有些犹豫?我正在我的WinProc(...)中调用一个函数,当按下某个键时,该函数将在屏幕(OpenGL)上移动图像。我按下它并得到一个单一的响应,然后有大约0.5秒没有任何反应,然后它表现正常(每个WinMain循环移动1个像素)。我想知道是否由于我需要禁用某些功能而导致Windows消息以某种方式延迟???这是我的代码:intWINAPIWinMain(HINSTANCEhinstance,HINSTANCEhprevinstance,LPSTRlpcmdline,intnshowcmd){boolquit=false;MSGmsg;crea

windows - Linux 上的键盘和鼠标交互

我最近遇到了一个名为AHK的Windows库这使我能够很好地控制与应用程序的交互。在Linux世界中有类似的东西吗? 最佳答案 有几个autohotkey移植到linux正在进行中。这是我的:AutoHotkey使用winelib来源:ahkx.gitautohotkeyforum此外,您可以查看IronAhk,autokey,和xdotool 关于windows-Linux上的键盘和鼠标交互,我们在StackOverflow上找到一个类似的问题: https