AHK 之 ComObjCreate("Shell.Application").Windows

本文是关于使用AutoHotkey (AHK) 中的ComObjCreate("Shell.Application").Windows来访问和操作打开的IE窗口的笔记。通过遍历Windows对象,可以获取到每个IE窗口的FullName、path、Name以及locationname等信息,尤其在Windows XP和IE8环境下,locationname能显示每个Tab的名字。示例代码展示了如何检查是否为IE窗口,并获取其locationname和cookie。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

autohotkey 笔记 20150329


几乎盲人摸象般折腾好久,一点总结:

1. Shell object : https://msdn.microsoft.com/en-us/library/bb774094.aspx

2. ShellWindows object:  https://msdn.microsoft.com/en-us/library/bb773974.aspx


For IE in ComObjCreate("Shell.Application").Windows { ; for each open window, can only find explorer.exe and iexplorer.exe on win XP
;cnt := cnt+1
;实际测试结果,ComO

### 将 AutoHotkey (AHK) 脚本转换为按键精灵 XML 格式的挑战 将 AutoHotkey (AHK) 脚本转换成按键精灵的 XML 格式并非直接对应的任务,因为两者不仅编程语言不同,而且文件结构和执行环境也有显著差异。然而,可以设计一种映射策略来实现这一目标。 #### 映射 AHK 功能至按键精灵命令集 1. **热键定义** 在 AHK 中,`::` 或 `~` 符号用于定义热键触发的动作,在按键精灵中可以通过 `<Key>` 和相应的属性设置来模拟这种行为[^1]。 2. **鼠标操作** 对于鼠标的点击、移动等动作,AHK 使用诸如 `Click`, `MouseMove` 命令;而在按键精灵 XML 文件里,则应采用对应的标签如 `<MouseAction Type="MoveTo">` 来指定位置以及具体的操作类型[^2]。 3. **键盘输入仿真** 当涉及到发送特定字符序列给应用程序时,AHK 的 `Send` 可以被替换为按键精灵中的 `<KeyboardInput Text="">` 元素来进行相同的功能描述。 4. **循环与条件判断** 复杂逻辑控制语句(if/else, loops),需要利用按键精灵支持的相关节点构建相似流程图,比如使用 `<IfElse>...</IfElse>` 结构表达分支选择,用 `<Loop Count="n">...</Loop>` 实现重复执行某段代码块 n 次的效果。 5. **变量处理** 如果存在动态赋值的情况,那么可以在按键精灵项目内创建全局或局部参数,并通过 `<SetVariable Name="" Value=""></SetVariable>` 设置其初值,之后再依据上下文读取这些已设定好的数值参与后续运算或其他交互过程。 6. **其他特性** 针对一些特殊功能点——像窗口管理 (`WinActivate`) 或者定时器 (`SetTimer`) ——则要查找是否有相近效果可由按键精灵提供并加以应用。 #### 示例:简单的 AHK 到按键精灵 XML 的转换 假设有一个非常基础的 AHK 脚本片段如下: ```ahk F1:: MsgBox Hello World! Return ``` 这表示按下 F1 键后弹出消息框显示 "Hello World!" 。将其转化为按键精灵 XML 形式可能是这样的: ```xml <Script> <Event Key="F1"> <MessageBox Title="提示" Message="Hello World!"/> </Event> </Script> ``` 请注意上述例子仅作为概念验证用途,实际情况下还需考虑更多细节因素才能确保兼容性和稳定性。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值