将 Ctrl+Key 发送到第三方应用程序

2023-12-04

Im using a 3rd Party Application that exports a file. The application uses a hot key (Ctrl + E) as a shortcut for this function.

如何将这个组合键从我的 Delphi XE 应用程序发送到第 3 方应用程序?


Here is an example which shows how to send Ctrl+E to the foreground application using SendInput:

var
  Inputs: array [0..3] of TInput;
begin
  // press
  Inputs[0].Itype := INPUT_KEYBOARD;
  Inputs[0].ki.wVk := VK_CONTROL;
  Inputs[0].ki.dwFlags := 0;

  Inputs[1].Itype := INPUT_KEYBOARD;
  Inputs[1].ki.wVk := Ord('E');
  Inputs[1].ki.dwFlags := 0;

  // release
  Inputs[2].Itype := INPUT_KEYBOARD;
  Inputs[2].ki.wVk := Ord('E');
  Inputs[2].ki.dwFlags := KEYEVENTF_KEYUP;

  Inputs[3].Itype := INPUT_KEYBOARD;
  Inputs[3].ki.wVk := VK_CONTROL;
  Inputs[3].ki.dwFlags := KEYEVENTF_KEYUP;

  SendInput(Length(Inputs), Inputs[0], SizeOf(TInput));
end;

我还使用 Steve Seymour 的 SendKeys.pas 的稍微修改版本。它在不同的键盘布局上存在一些问题,并且是 1999 年的。在网络上找不到它。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

将 Ctrl+Key 发送到第三方应用程序 的相关文章

  • 获取 TransactSql 批处理中的语句数计数

    对于不使用 Delphi 的读者 虽然以下内容是根据 Delphi 编码来表达的 但我的实际技术问题不是特定于 Delphi 的 而是关于如何找出 Sql Server 如何 理解 TransactSql 批处理提交给它 TAdoQuery
  • 如何仅在调试模式下激活 ReportMemoryLeaksOnShutdown?

    我需要激活ReportMemoryLeaksOnShutdown报告应用程序内存泄漏的功能 但仅限于调试模式 当 Delphi IDE 运行时 我怎样才能做到这一点 如果您的意思是使用调试构建配置 D2007 编译的 调试模式 则您将定义
  • Delphi线程死锁

    我有时会在销毁某些线程时遇到死锁问题 我尝试过调试该问题 但在 IDE 中调试时似乎从未存在死锁 可能是因为 IDE 中的事件速度较低 问题 当应用程序启动时 主线程会创建多个线程 线程始终处于活动状态并与主线程同步 完全没有问题 当应用程
  • 如何获取与Windows主题相关的图标?

    如何获取Windows中某个控件的图标 更具体地说 我想从 ListView 标题中获取排序箭头图标 我尝试使用以下方法来获取它 HRESULT GetSortArrowBmp HWND hwnd HEADERSORTARROWSTATES
  • Firemonkey 编辑/组合自动完成/打字时自动建议

    实施方式是什么Autocomplete or Autosuggest适用于 Windows Android 平台以及 MacOS 和 iOS 的 Delphi Firemonkey Example 当用户在 Google 搜索框中输入文本时
  • 使用 OLE 和 Delphi 提高 Word 文档中搜索替换的性能

    经过一些实验 我最终得到了以下代码来在 MSWord 中执行搜索和替换 此代码在页眉和页脚中也能完美运行 包括首页或奇数 偶数页的页眉和 或页脚不同的情况 问题是我需要打电话MSWordSearchAndReplaceInAllDocume
  • 命名管道端口号

    命名管道是否使用端口进行通信 我使用的命名管道 http msdn microsoft com en us library aa365150 28VS 85 29 aspx http msdn microsoft com en us lib
  • 使用 Windows (XP+) api 发送(串行)中断

    有没有比 setcommbreak delay clearcommbreak 序列更好的方法来发送串行中断 我必须与使用串行中断作为 115k2 上数据包开头的微控制器进行通信 而 setcommbreak 有两个问题 对于 115k2 中
  • 德尔福数据结构

    我可能需要在 Delphi 中做一个项目 并且是该领域的初学者 目前 我正在网上搜索资源 但由于资源站点太少而感到困惑 首先 你能给我一些好的网站 其中包含我迄今为止错过的 Delphi 资源吗 我也在 Delphi 中搜索数据结构 想知道
  • 如何仅使用 TADOQuery 组件将图像插入数据库

    我有一个简单的基本问题 我正在尝试使用将图像插入数据库Insert与其他列值的语句也使用TADOQuery成分 由于代码已经由某人编写 因此我想在此处放置一些虚拟示例代码 以供您澄清相应的步骤 请注意 这可以正常工作TQuery组件 因为我
  • 我如何在Delphi中处理事件?

    例如 我有一个程序 在单击 Button1 后执行某些操作 如果没有 Button1Click 中的代码 如何处理按钮的 onclick 事件 我需要为 Button1 动态添加事件 unit Unit1 interface uses Wi
  • 有人用CrossKylix进行真正的跨平台开发吗?

    新版本克罗斯凯利克斯 http crosskylix untergrund net 两周前更新过 即使 Kylix 已经停产很久了 但它似乎仍然被一些 Delphi 开发人员使用 有人在 Windows 和 Linux 的跨平台开发中成功使
  • TDictionary 上的 GetItem 由链接器消除

    我正在使用一个TDictionary of
  • 如何从任何进程关闭 Windows 上的套接字(ipv4 和 ipv6)连接?

    如何在 Windows 上关闭 tcp v4 和 tcp v6 连接 我不想终止具有开放连接的整个进程 因为这显然会将其他人踢出该进程 我需要从一个单独的进程执行此操作 因此无法访问套接字句柄等 我正在使用 Windows API 来获取
  • TOpenDialog/NSOpenPanel 无法在沙盒 Delphi 应用程序中工作

    Firemonkey 应用程序中的 TOpenDialog 似乎存在问题 该应用程序已针对 Mac Appstore 进行沙箱处理 我使用XE3 但它也存在于XE2中 我其实在这里找到了一份QC报告 但仍然没有解决 http qc emba
  • 在 Delphi 中使用 XML(将特定数据返回到变量)

    过去几天我一直在尝试使用 Delphi 2010 和 MSXML 我是一个极端的新手 需要一点指导 var MemoryStream TMemoryStream XMLPath String sName String XMLDoc vari
  • TObjectList.Contains 导致 Delphi 2009 中的访问冲突

    在 Delphi 2009 中 到目前为止 我在泛型方面没有遇到大问题 使用 Generics Collections 列表 没有特殊的泛型功能 现在我发现这段代码会在访问的行中导致AVMyList Contains 如果我声明 TMyLi
  • Delphi AES 库 (Rijndael) 使用 KAT Vectors 进行测试

    对于这两个库 Delphi 加密概要 v 5 2 http code google com p delphidec TurboPower 密码箱 v 2 07 http lockbox seanbdurkin id au tiki list
  • 如何在运行时(Delphi/Windows)程序中添加代码?

    我正在Windows XP Delphi 7上工作 我需要在正在运行的程序中添加一些过程 或函数 并且我不想在完成后再次重新编译它 我只有一个具有 5 个功能的主机应用程序来发送不同类型的警报 但是还有其他新的警报类型 所以我必须执行新的功
  • SetCurrentDirectoryW 中的错误 206

    在我之后之前不清楚的问题 https stackoverflow com questions 44389617 long path name in setcurrentdirectoryw 我以某种方式能够创建一个具有长路径名的目录 但是

随机推荐

  • QStackedWidget - 一页一页地更改页面

    有没有办法更改 QStackedWidget 的页面而不指定实际索引 self homeb clicked connect lambda self stackedWidget setCurrentIndex 0 因此 我不想直接使用按钮直接
  • 统计其他表中不存在的所有记录 - SQL 查询

    我有两 2 个表 我正在尝试计算 Table1 和 Table1 delta 中的所有记录 而 Table1 delta 中的页面名称尚未列出到 Table1 中 如果 Table1 delta 中的 pagename 被列出到 Table
  • Service Fabric 默认发布配置文件而不是 Local.xml

    我们公司正在使用 Service Fabric 开发新应用程序 我们遇到的一个常见问题是 多个开发人员使用远程服务器上的队列 数据库 存储 每个开发人员对此都有不同的配置 所有设置都存储在每个环境的 ApplicationParameter
  • Azure B2C - 在 Azure 中为不同用户类型设置多个登录的单一应用程序

    我正在构建一个 ASP Net core 应用程序 我有两种类型的用户 消费者和供应商 如何在 Azure AD B2C 中为两种不同类型的用户设置两种不同的注册 登录 因此 在我的 ASP 中 我可以有一个页面供消费者使用第三方提供商进行
  • 根据时间范围变量重复行 - R

    我的数据中有一个列变量 它是一个时间范围 datesemployed 样本数据如下 name datesemployed university Kate Oct 2015 Jan 2016 Princeton Sue Nov 2015 De
  • SQL Server 树层次结构和具有重复记录 ID 的嵌套集

    鉴于我有这个结果集结构 多余的字段已被删除 Id ParentId Name Depth 是否可以按树顺序返回记录 即Parent then Children if a Child is a Parent 那么他们的Children 如果不
  • 如何在 Android 中暂停计时器?

    我已经浏览了链接http dewful com tag basic android timer关于android中的定时器应用程序 它运行良好 我需要添加暂停按钮来停止计时器 并添加播放按钮以从我停止的位置再次启动计时器 我能完成那个任务吗
  • 使用 Spring Data Neo4j 进行审计

    我目前正在开发一个使用 Spring Data Neo4j 的项目 每当创建 NodeEntity 时 我想创建一个引用的 Audit NodeEntity 其中包含创建日期和用户 我提出的一个解决方案是编写一个 AOP 方面 它挂接在我的
  • 导入错误 - 没有语言“eng”的本地化支持

    我知道有一个与这个问题相关的问题 但我找不到我所期望的 ImportError Python 中的语言 eng 没有本地化支持 我收到错误 Import Error No localization support for language
  • 如何在ReactJS中实现带有受控组件的动态表单?

    当我查看参考文献中的示例时controlled form components 在react js官网 我想知道应该如何实施form您将能够remove and add input元素以动态方式使其成为受控组件 这可能吗 在例子中我们可以看
  • Node.js Sass 版本 7.0.0 与 ^4.0.0 || 不兼容^5.0.0 || ^6.0.0

    我使用 Node js v16 13 1 并创建了一个 React 应用程序 我尝试使用Sass 但是当我尝试运行它时 出现以下错误 Node Sass 版本 7 0 0 与 4 0 0 不兼容 5 0 0 6 0 0 如果你想使用SCSS
  • 使用 ffmpeg 将图像编码为视频

    我正在尝试将一系列图像编码为一个视频文件 我正在使用 api example c 中的代码 它可以工作 但它在视频中给了我奇怪的绿色 我知道 我需要将 RGB 图像转换为 YUV 我找到了一些解决方案 但它不起作用 颜色不是绿色而是很奇怪
  • Oracle Apex 5 - 页脚栏,类似于 App Builder 中的页脚栏

    如何在 Oracle Apex 通用主题应用程序中创建页脚栏 区域 就像在 Oracle Apex App Builder 中一样 实现该目标所需的 html css 代码是什么 具体来说 我有兴趣更改或替换 UT 中已存在的内容 以替换与
  • sed 用条件替换字符串

    我有一个文件包含几行 每一行的格式如下 2011 07 10 condition hhh aaa value bbb 2011 07 10 condition ccc aaa value bbb 我想使用 sed 查找 aaa 和 bbb
  • 如何正确迁移存储过程?

    我的任务是将站点从旧的客户端服务器转移到新的服务器 我已经从旧服务器完成了 sqldump 并导入到新服务器中 除了使用 mysqli 在 php 中完成的一些 sql 调用之外 它正在工作 我对存储过程不太熟悉 但我注意到失败的是如下所示
  • 如何在 gnuplot 中删除“跳跃”值之间的线?

    我想用包含 跳跃 值的图画一条线 举个例子 当我们绘制几个周期的 sin x 图形并绘制它时 会出现从右到左穿过的不切实际的线 如下图所示 避免这种情况的一个想法可能是使用with linespoints link 但我想在不修改原始数据文
  • 将事件插入带有 Intent 的日历时出错

    我正在尝试将事件插入calendar来自片段 但我不断收到错误 指出没有找到处理 Intent 的活动 这是错误 android content ActivityNotFoundException 找不到处理 Intent 的 Activi
  • 从目录中选择随机文件[重复]

    这个问题在这里已经有答案了 关于如何改进这种方法有什么建议吗 我目前正在使用它从壁纸目录中选择单个壁纸 我知道你不应该再使用 arraylist 但我想不出替代方案 我也不确定如何在目录信息中过滤不止一种类型的文件 即 jpg gif pn
  • 如何在for循环中正确调用递归函数?

    我正在尝试实现一个以目标为参数的方法string and an array with string其中的价值观 目标是检查是否可以使用数组的值构造给定的目标字符串 数组中的单词可以根据需要多次使用 例子 console log canCon
  • 将 Ctrl+Key 发送到第三方应用程序

    Im using a 3rd Party Application that exports a file The application uses a hot key Ctrl E as a shortcut for this functi