Post by ziyuanjun » 04 Dec 2021, 20:29
补充:Edge、Firefox、Chome都试过了;管理员方式运行ahk脚本也试过了
完整代码如下:
Code: Select all
;WinActivate,ahk_exe msedge.exe ;;激活Edge窗口
^!p:: ;;Ctrl+Alt+P进行调用
WinGet, hWnd, ID, A
oWB := WBGet("ank_id " hWnd)
MsgBox, % oWB.document.title "`r`n" oWB.document.url
vScrollHeight1 := oWB.document.body.scrollHeight
vScrollHeight2 := oWB.document.documentElement.scrollHeight
;vScrollTop := oWB.document.documentElement.scrollTop
MsgBox, % vScrollHeight1 " " vScrollHeight2`
return
;[WBGet function for AHK v1.1]
;WBGet function - AutoHotkey Community
;https://autohotkey.com/boards/viewtopic.php?f=6&t=39869
WBGet(WinTitle="ahk_class IEFrame", Svr#=1) { ;// based on ComObjQuery docs
static msg := DllCall("RegisterWindowMessage", "str", "WM_HTML_GETOBJECT")
, IID := "{0002DF05-0000-0000-C000-000000000046}" ;// IID_IWebBrowserApp
;// , IID := "{332C4427-26CB-11D0-B483-00C04FD90119}" ;// IID_IHTMLWindow2
SendMessage msg, 0, 0, Internet Explorer_Server%Svr#%, %WinTitle%
if (ErrorLevel != "FAIL") {
lResult:=ErrorLevel, VarSetCapacity(GUID,16,0)
if DllCall("ole32\CLSIDFromString", "wstr","{332C4425-26CB-11D0-B483-00C04FD90119}", "ptr",&GUID) >= 0 {
DllCall("oleacc\ObjectFromLresult", "ptr",lResult, "ptr",&GUID, "ptr",0, "ptr*",pdoc)
return ComObj(9,ComObjQuery(pdoc,IID,IID),1), ObjRelease(pdoc)
}
}
}
补充:Edge、Firefox、Chome都试过了;管理员方式运行ahk脚本也试过了
完整代码如下:
[code]
;WinActivate,ahk_exe msedge.exe ;;激活Edge窗口
^!p:: ;;Ctrl+Alt+P进行调用
WinGet, hWnd, ID, A
oWB := WBGet("ank_id " hWnd)
MsgBox, % oWB.document.title "`r`n" oWB.document.url
vScrollHeight1 := oWB.document.body.scrollHeight
vScrollHeight2 := oWB.document.documentElement.scrollHeight
;vScrollTop := oWB.document.documentElement.scrollTop
MsgBox, % vScrollHeight1 " " vScrollHeight2`
return
;[WBGet function for AHK v1.1]
;WBGet function - AutoHotkey Community
;https://autohotkey.com/boards/viewtopic.php?f=6&t=39869
WBGet(WinTitle="ahk_class IEFrame", Svr#=1) { ;// based on ComObjQuery docs
static msg := DllCall("RegisterWindowMessage", "str", "WM_HTML_GETOBJECT")
, IID := "{0002DF05-0000-0000-C000-000000000046}" ;// IID_IWebBrowserApp
;// , IID := "{332C4427-26CB-11D0-B483-00C04FD90119}" ;// IID_IHTMLWindow2
SendMessage msg, 0, 0, Internet Explorer_Server%Svr#%, %WinTitle%
if (ErrorLevel != "FAIL") {
lResult:=ErrorLevel, VarSetCapacity(GUID,16,0)
if DllCall("ole32\CLSIDFromString", "wstr","{332C4425-26CB-11D0-B483-00C04FD90119}", "ptr",&GUID) >= 0 {
DllCall("oleacc\ObjectFromLresult", "ptr",lResult, "ptr",&GUID, "ptr",0, "ptr*",pdoc)
return ComObj(9,ComObjQuery(pdoc,IID,IID),1), ObjRelease(pdoc)
}
}
}
[/code]