我正在尝试使用autohotkey脚本将cmd.exe IDE的内容提取到文本文件,即一个test.ahk,其编写如下所示:
WinGetText, text, "C:\WINDOWS\system32\cmd.exe"
FileAppend, %text%, C:\ThreePartition\ACTUAL.txt
我无法提取内容。任何人都可以建议正确的提取方法吗?
答案 0 :(得分:2)
检索到的文本通常与Window Spy为该窗口显示的内容相同。
Window Spy没有显示CMD窗口的文本元素 - 你看到的不一定是你能得到的:)
您可以做的是模拟“全选”和“粘贴”命令,然后使用剪贴板内容。
答案 1 :(得分:0)
我不相信您可以在不使用DllCall直接读取进程内存的情况下提取cmd窗口的内容。
如果您只想输出诸如Grep或AWK之类的CLI命令,则可以通过run命令使用stdout。老实说,我不再依赖AHK,因为这种事情太笨重了。
http://www.autohotkey.com/docs/commands/Run.htm
修改评论 您想要的是可行的,但解决方案完全取决于IDE的工作方式。它具有什么样的特性才能构建项目?如果它生成临时文件,您可以使用AHK子例程重载“构建”按钮,该子例程监视这些文件是否存在,然后检查输出可执行文件的修改日期以查看构建是否成功。如果IDE在构建时更改其窗口标题,则可以使用相同类型的解决方案。要聪明。 :)
如果失败,您可能需要安装消息钩。