WebWait(A,Search)
{
WinAct(A)
; 새창의 윈도ID 얻기
WinGet, wid, ID
; 새창을 제어할 수 있는 COM 오브젝트 얻기
ie := IE_ComObjGet(wid)
; 이제 ie를 통해 새창을 제어한다.
; 특정 윈도ID를 가지는 IE창의 COM 오브젝트를 얻는다. 존재하지 않는다면 빈문자열을 반환한다.
@param wid 윈도ID
@return COM 오브젝트
;ie 오브젝트에서 한번 썻기때문에 안씀.
IE_ComObjGet(wid) {
For obj in ComObjCreate("Shell.Application").Windows
If (ComObjType(obj, "Name") == "IWebBrowser2" && obj.HWND == wid)
Return obj
}
loop
{; ie 객체의 테스트를 취득하여 dnserror 오류가 없으면 result에 저장을 하며, result에 페이지 특유의 텍스트가 있는지를 비교하여 완료.
If (!RegExMatch(ie.StatusText, "dnserror")) {
ErrorLevel := 0
result := ie.Document.documentElement.innerHTML
} Else {
ErrorLevel := 1
}
FileAppend, %result%, test.html
IfInString, result, %Search%
{
break
}
}
}