2014-12-19 147 views
2

我的LOTRO脚本相当先进,但遗憾的是,还没有想出一种方法来从聊天框捕获数据。我想写一个外部地图应用程序,并希望有AutoHotkey的键入从画面,特别是有标题的位置数据,自动抓取数据:Autohotkey:从窗口擦除文本(LOTRO)

/loc 

聊天框里面。

此图像与imgur相关联,我试图捕获的区域突出显示。

我觉得很奇怪,因为我可以很容易地突出显示窗口中的文本,将它复制并粘贴到记事本或任何其他写字板编辑器。

我曾尝试下面的方法来试图收集从窗口中的文本,但我似乎无法找到任何控件或文本,运行该脚本以管理员身份时也是如此。

WinGet, cList, ControlList, A 
Loop, Parse, cList, `n, `r 
{ 
    ControlGetText, cText, % A_LoopField, A 
    if cText 
    res.="Control: " A_LoopField "`tText: " cText "`n" 
} 
MsgBox % res 

WinGetText, text ; The window found above will be used. 
MsgBox, The text is:`n%text% 

任何想法?

回答

3

游戏有非传统的GUI,你不能只是得到控制和使用它们。

要从屏幕获取非传统GUI的信息,您可以使用以下命令:ImageSearch,PixelGetColor,PixelSearch

您也可以尝试从注册表获得的信息(也许信息需要存储在注册表中)与RegRead命令。

一些信息可以存储在文本文件中,您可以使用FileRead,FileReadLine,,LoopReadFile来读取它们。

你也可以尝试从内存中获取信息。有关使用AutoHotkey阅读内存的脚本和指南,只需google“AutoHotkey读取内存”即可。

也请注意that

+1

我找到了一种方法来收集它通过运行chatog命令输出一个txt文件,然后我有autohotkey阅读该文本文件。这很麻烦,但是很有效。 – MaurerPower 2014-12-21 02:45:07

+2

我可以从内存中获取我的方位位置,我找到了存储该位置的地址,只是超级奇怪,我无法找到保存坐标的内存位置。显然它不存在。 我会将其标记为答案,因为它非常全面。 我用cheatengine找到内存位置,并阅读坐标,不是最佳的解决方案的文本文件,但它的工作原理:( – MaurerPower 2014-12-21 02:46:37