【AHK】快速 [启动&关闭] [讯飞语音悬浮窗&小爱同学]

前面发的帖子因为一些原因暂时无法访问,所以重新发布一个。

脚本功能即为快速打开和关闭讯飞语音悬浮窗。

使用方法,把脚本和讯飞语音悬浮窗的快捷方式放在一起,然后启动脚本(前提是电脑中安装有 AutoHotKey)。

当然你也可以理解为把语音悬浮窗的快捷方式放到脚本身边一份。

重点提示: 讯飞语音输入法安装之后,并不需要设置进输入法列表。你依旧可以使用自己所喜欢的各种输入法,而讯飞的输入法只使用它的语音输入部分。但不要对讯飞语音输入法自行解压安装包提取绿色版。提取出来的绿色版,在最开始你会觉得它确实是可以用的,但实际上语音识别的准确率会下降非常多,怀疑可能是对麦克风部分的优化不够,比如安装包会对这部分进行驱动级别的支持(猜测。

将下面代码保存为 启动&关闭语音输入法.ahk,注意文件编码应该是 GBK 或者 GB2312,如果使用 UTF-8,且快捷方式的名称是中文,那么会导致错误,以及所有的中文注释可能成为乱码.

Update: 添加了对小爱同学的“并不优雅”启动

; 设定坐标模式为相对于程序窗口,如果只是启动语音输入法,这一行可以不要
CoordMode, Mouse, Window
; 按键可以自定义,当前按键为鼠标侧键下边的那一个。XButton2 的话就是上面的那一个.
XButton1::
  ; 这里获取当前语音输入进程的 PID
  Process, Exist, iFlyVoice.exe
  iFlyPID = %ErrorLevel%
  ; 判断是否存在该 PID
  if iFlyPID = 0
  {
    ; 不存在则运行对应的快捷方式,前面代码比较长,是为了能够隐藏提权提醒(以管理员方式进行运行)
    Run %comspec% /c set __COMPAT_LAYER=RUNASINVOKER && start 语音悬浮窗.lnk, ,min
  } Else {
    ; 如果存在此进程则结束它
    Process, Close, %iFlyPID%
  }
  Return
; 以下是尝试用侧键启动小爱同学,首先要在微软的应用商店安装,安装地址如下:
; https://www.microsoft.com/zh-cn/p/小爱同学/9mw76kfhnz0c
; 在开始菜单中找到他的快捷方式,直接拖动到脚本旁边,然后修改快捷方式的名称为 XiaoAI

; 鼠标前面那个侧键(也可以根据自己的习惯进行修改
XButton2::
  ; 查找对应窗口
  WinGet, XiaoAI, ID, 小爱同学 ahk_exe ApplicationFrameHost.exe
  if(XiaoAI){
    ; 如果窗口存在,那么关闭它
    WinClose, 小爱同学 ahk_exe ApplicationFrameHost.exe
  } else {
    ; 如果窗口不存在那么启动它
    Run "XiaoAI.lnk"
    ; 这个延时是为了等待程序启动,根据自己实际状况进行调节
    Sleep 1300
  }
  ; 激活窗口
  WinActivate, 小爱同学 ahk_exe ApplicationFrameHost.exe
  ; 获取窗口的高度
  WinGetPos, , , W, H, 小爱同学 ahk_exe ApplicationFrameHost.exe
  ; 在左下角的位置,单击鼠标左键,这很不优雅,但是目前没有什么太好的办法
  MouseClick, Left, 37, % H - 37
  Return

使用起来就很简单了,一键开启,一键结束,只要电脑不是很差,基本上是秒开秒关。