2014-12-19 152 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