选择Windows自动化脚本语言。AutoIt与Autohotkey [关闭]


103

我需要选择Windows自动化脚本语言。您推荐哪一个?AutoItAutoHotkey还是其他?

我已阅读“ AutoIt / AutoHotkey比较 ”。有趣的历史,但没有推荐。搜索Google时,约有31.2万次点击,AutoHotkey Windows而则为48.2 万次AutoIt Windows。在Stack Overflow上标记了15个问题 vs 18

我对您作为程序员的观点感兴趣。您认为哪个功能更易于使用,更易于部署且功能更强大?我已经将AutoHotkey用于个人用途,因此我的最初偏好是为此。


10
AutoIt改变了我的生活。它已成为我工作中的宝贵工具。
巴拿马杯2009年

3
Autoit必胜!让我解释。大多数Autoit用户是第一次学习编码。现在,Autoit语法是入门的合适语法。使用Autoit之后,您可以轻松学习其他语言。从这个角度来看,AHK语法是没有用的。
米洛斯(Milos)

Answers:


44

我已经用了很多。

AutoHotKey非常擅长管理热键和基本的GUI自动化。它的语法太可怕了,并不适合更大的应用程序。

AutoIt具有AutoHotKey几乎具有的所有功能以及更多其他功能。COM自动化支持,数组和漂亮的UDF(用户定义函数)库。在AutoIt中构建复杂的热键比较困难。


6
尽管如此,AHK确实具有本质上更神秘的语法,它不像AutoIt那样对用户或初学者友好。AutoIt更适合大型项目的开发人员,并支持更现代,更直观的语法。AHK的名字确实让人眼前一亮。热键。imo,AutoIt甚至无法真正在那里竞争。
未签名,

9
AHK很棒,如上所述,它的语法很糟糕。
沙文库(Sabuncu)2012年

82
  • 我认为AutoHotkey的GUI实现像许多其他命令一样易于使用。
  • AutoHotkey(不再维护)具有3个fork:
    • AutoHotkey v1.1。*(以前称为AutoHotkey_L)具有COM,Unicode支持,面向对象的语法,数组等。
    • AutoHotkeyCE可在Windows移动PDA和智能手机上使用(未完成,不再维护)。
    • IronAHK,.NET版本的AutoHotkey(未完成,不再维护)。
  • AutoHotkey包含一个DLL文件,您可以从其他编程语言调用它(AutoIt也是如此)。
  • AutoHotkey是开源的,AutoIt不是。
  • 您必须搜索AutoHotkey网站才能将所有工具组合在一起。AutoIt可以更好地打包其初始下载中的所有内容。

我的投票赞成AutoHotkey(AHK)。


3
...不知道它的全部功能,而是选择了AutoIt。 ”“ AutoHotkey有3个主要的分支使AutoIt黯然失色。 ” AutoHotkey的分支用来跟上AutoIt的功能。
user4157124 '17

仅供参考:为什么您说不再使用AutoHotkey?在它的官方网站上,最新版本是:当前版本:v1.1.33.00-2020年6月30日-我知道答案是2018年3月4日,但仍然在2018年AHK仍在
维护

16

我会根据情况使用两者。AutoHotkey非常适合用于快速按键宏,而AutoIt具有更广泛的自动化功能,并且用户定义函数(UDF)允许一系列有用的东西,例如XML和数据库交互。当自动化需要大量GUI交互时,我使用AutoIt。


3
+1- When automation requires a lot of GUI interaction I use AutoIT.我希望我先问这个!
Samrat Patil

16

AutoIt是一个了不起的工具,其诱人的易用性和庞大的UDF库以及无与伦比的帮助文件难以比拟。

我尝试了AutoHotkey,但是它笨拙的感觉和破旧的语法使我无法使用。当您可以自己为公主喝酒和用餐时,为什么还要为丑陋的妹妹安顿下来。AutoIt 100%。


13

我在创建AutoHotkey之前使用了AutoIt(当它具有从BAT文件继承的语法时)。我对当前的AutoIt经验不足,无法进行正确的比较。它具有相当常规的语法,而AutoHotkey的语法(尽管与原始样式相比有了很大改进)似乎很奇怪。从未编码的人实际上很喜欢这种语法!

我犹豫了一下,阅读了无数比较,最后还是选择了AutoHotkey而不管它的语法。一方面是由于其出色的热键管理功能,另一方面是因为它是开源的。作者很活跃(他停了下来,但现在有其他分支机构)并且愿意提出建议。我展示了使用PCRE支持正则表达式的原型 DLL。他整合了这些概念并将其推到了更高的水平(例如,在窗口名称检测中支持正则表达式)。

文档非常好,详尽,示例齐全,并具有全面的索引。社区非常活跃,乐于助人。二进制文件很紧凑,您可以使用脚本制作一个独立的EXE文件。它还具有GUI支持(适用于快速简单的对话框窗口)。

我不会说一个更好,选择主要取决于口味,感觉和需求。


11

我使用AutoHotkey并认为该语言很困难。我想这要么是一种后天习得的味道,要么有人对此有亲和力。我曾经是Perfect Keyboard的长期用户,但现在是AutoIt的忠实拥护者。

尽管它像Basic,但我仍然可以编写对我来说最舒适的“ C”程序。还有AutoIt的库,可节省时间。例如,用于IE的库具有许多出色且有用的功能。良好的IDE和活跃的用户社区。

我的投票是通过AutoIt。


Firefox的库是否存在?因为IE不是当今与网站交互的最佳选择……
user3450548

7

我对AutoIt感到非常满意。该语言是Basic的简单风格。它们包括出色的帮助文件,脚本编译器,不仅了解语法而且支持F1帮助等。它们具有大量的代码示例。

我没有使用AutoHotKey的第一手经验-我确实记得考虑过这一点,但是自从使用AutoIt之后我再也没有回过头。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.