2010-12-20 39 views
2

我有一个小的VB .Net应用程序,其中包括尝试用系统宽度输入的文本替换用户(hotstrings概念)。为了实现这一目标,我已经部署了“ahk2exe”和“AutoHotkeySC.bin”我的申请,并做了以下内容:如何以编程方式在Windows中实现全系统文本替换?

当用户assignes一个新的“热字串”:

  1. 杀“热字串” exe文件的脚本文件,如果运行
  2. 追加新热字串脚本文件(如果不存在,则新建一个)
  3. 转换编辑/新的脚本文件到exe(使用ahk2exe)
  4. 运行新转换脚本EXE (某处那里我也检查热点是否有已经分配)

不过,我并不完全满意,这种方法有以下两个主要原因:

  1. 在部署应用程序的额外资源。
  2. 滞后:系统杀死进程然后重新启动所需的时间在我的快速计算机上至少需要5秒,而在其他计算机上至少需要5秒。这段时间远超过用户分配热点字符串的时间,最小化/关闭窗口,然后测试他/她的新热点字符串。当用户最初没有成功时,他们会认为该过程失败。所以这种方法对用户体验不太好。

所以,我正在寻找不同的方法或实现。可能使用键盘挂钩?或者,也许添加一个.dll库实现相同。有没有你认识的资源可以帮助你(免费或商业)?什么是实现我期望的目标的最佳方式?

非常感谢您的帮助。

+0

@Bobby:感谢您的编辑。 – mazrabul 2010-12-20 15:31:34

回答

0

实现Autohotkey所做的事情将是一项非常重要的任务。

但我敢肯定,AHK支持脚本

谷歌搜索“AutoHotkey的自动重载”的“自动重载”选项打开了几个网页讨论这一概念本身。如果有效,你所要做的就是更新脚本文件,就是这样,AHK应该自动重新加载脚本。

相关问题