WinBatch Tech Support Home

Database Search

If you can't find the information using the categories below, post a question over in our WinBatch Tech Support Forum.

TechHome

Samples from Users
plus
plus
plus
plus
plus
plus
plus
plus
plus
plus
plus
plus
plus
plus
plus
plus

Can't find the information you are looking for here? Then leave a message over on our WinBatch Tech Support Forum.

Get Status Bar of Internet Explorer

 Keywords:  Internet Explorer IE Statusbar Status Bar Text WM_GETTEXT cWndGetWndSpecName cWndByWndSpec cWndByClass cWndexist Frame Tab TabWindowClass msctls_statusbar32 SendMessage SendMessageA

AddExtender("wwctl44i.dll")

title = "Statusbar Text"
BoxOpen(title,"")
IntControl(54,title,1,0,0)

WM_GETTEXT = 13
len = 256 ; abritrary max len
buf = BinaryAlloc(len)
BinaryEodSet(buf,len)

While 1
   If IsKeyDown(@SHIFT) Then Break
   Yield()

   hWnd = cWndexist(0,"IEFrame", 4)
   If !hWnd Then TimeDelay(.5)
   Then Continue
   hWnd2 = cWndexist(hWnd,"Frame Tab", 4)
   If !hWnd2 Then Continue
   hWnd3 = cWndexist(hWnd2,"TabWindowClass", 4)
   If !hWnd3 Then Continue
   hControlHandle = cWndexist(hWnd3,"msctls_statusbar32", 4)
   If !hControlHandle Then Continue
   ret = DllCall(StrCat(DirWindows(1),"user32.dll"),long:"SendMessageA",long:hControlHandle,long:WM_GETTEXT,long:len,lpbinary:buf)
   sbtext = BinaryPeekStr(buf,0,ret)
   BoxText(sbtext)

EndWhile
BinaryFree(buf)
Exit


Another Method ( not as 'Fast' As cWndExist)

AddExtender("wwctl44i.dll")
 title = "Statusbar Text"
 BoxOpen(title, "")
 IntControl(54,title,1,0,0)

 WM_GETTEXT = 13
 len = 256 ; abritrary max len
 buf=BinaryAlloc(len)
 BinaryEodSet(buf,len)

 While 1

    ; Find the IE status bar control
    hwnd=DllHwnd("~Internet Explorer")

    spec=cWndGetWndSpecName(hwnd) ; Get IE current classname
    last = StrLen (spec) ; Length of string
    start = StrScan (Spec, "iexplore", last, @BACKSCAN) ; Find "iexplore"
    start = start - 8 ; Start pos of "iexplore"
    classspec = StrSub( Spec, start, -1 ) ; Extract module and childwins
    w1spec=StrCat ('"IEFrame"', ',', classspec) ; Construct window1 specs
    window1=cWndByWndSpec(%w1spec%)

    window2=cWndbyclass(window1,`Frame Tab`)
    window3=cWndbyclass(window2,`TabWindowClass`)
    ControlHandle=cWndbyclass(window3,`msctls_statusbar32`)
    ret = DllCall(StrCat(DirWindows(1),"user32.dll"), long:"SendMessageA", long:ControlHandle ,long:WM_GETTEXT, long:len, lpbinary:buf)
    sbtext = BinaryPeekStr(buf,0,ret)
    BoxText(sbtext)
    If IsKeyDown(@SHIFT) Then Break

 EndWhile
 BinaryFree(buf)
 Exit

Article ID:   W18246
Filename:   Get Status Bar of Internet Explorer.txt
File Created: 2013:04:15:14:58:16
Last Updated: 2013:04:15:14:58:16