我有EXE格式的安装程序(mt5setup.exe),我想下载它并自动进行Appveyor CI上的安装过程。在Linux上,我通常会使用xdotool。

由于此安装程序没有任何静默标志,我该如何无头自动化安装过程?

评论

我想到的最好的主意是:autoitscript.com/site/autoit(但是,将其写为答案可能太长或仅链接)
简单回答如何使用就可以了。

没有简短的答案,这意味着观看安装和编写脚本,我认为工具示例很好,仅引用doc并不能解决我的问题:/。

另一个选择可能是Chocolatey.org(同样,回答意味着安装链接的软件或引用该文档。

#1 楼

Windows应用程序的安装可以使用AutoHotkey(AHK)自动进行,类似于Winetricks对支持的所有常见应用程序执行的操作。

以下是AHK脚本的示例,该脚本旨在安装上述应用程序:

Run, mt5setup.exe
WinWait, MetaTrader 5 Setup
ControlClick, Button1
Sleep 100
ControlClick, Button3
WinWait, MetaTrader 5 Setup, Installation successfully completed
ControlClick, Button4
Process, Wait, terminal.exe
Process, Close, terminal.exe


要与CI集成,需要通过下载ZIP文件,解压缩并传递上述AHK脚本来安装AHK。建议的appveyor.yml文件:

install:
- curl -sLo https://www.metatrader5.com/en/download
- curl -sLo http://www.autohotkey.com/download/AutoHotkey104805.zip
- unzip *.zip
before_test:
- dir
test_script:
- AutoHotkey.exe install.ahk
build: off
platform: x86


其中install.ahk是包含上述AHK脚本的文件,该文件可以动态生成或从某些存储库下载。