Italia
Foro

HTML Control

 

Georg
Bernhardt
Ciao,
kann mir jemand helfen, wie man aus dem HTML Control von Uwe Pascal ermitteln kann welche url gerade darin geladen ist?

Georg
 
XProfan 10
05.12.2005  
 




Uwe
''Pascal''
Niemeier
Hallo Georg!

Ich weiss nicht, welche Demo genau du verwendest, aber ich hab da mal was gebastelt, das eigendlich mit allem kompatibel sein potrebbe, was hier so rumschwirrt.
KompilierenMarkierenSeparieren
window 10,10-750,500
usermessages 16
 $H Messages.ph---Standart
 $H Windows.ph----Standart
def AtlAxWinInit(0) !atl.dll,AtlAxWinInit
def AtlAxCreateControl(4) !atl.dll,AtlAxCreateControl
def AtlAxGetControl(2) !atl.dll,AtlAxGetControl
def CLSIDFromString(2) !ole32,CLSIDFromString
def SysFreeString(1) !oleaut32,SysFreeString

proc WideToMulti--------------------------------------------------------------

    parameters Quelle&,Ziel&
    return ~WideCharToMultiByte(0,0,Quelle&,-1,Ziel&,250,0,0)
    endproc-----------------------------------------------------------------------

    proc StringToGUID-------------------------------------------------------------

        parameters GUID$,GUID&
        declare Temp$
        Temp$=space$(80)
        ~MultiByteToWideChar(1,1,addr(GUID$),-1,addr(Temp$),80)
        CLSIDFromString(addr(Temp$),GUID&)
        endproc-----------------------------------------------------------------------

        proc CallMethod---------------------------------------------------------------

            parameters IFace&,Method&
            declare VTable&
            VTable&=long(IFace&,0)
            Method&=long(VTable&,Method&*4)
            case %pcount=2:return call( Method&,IFace& )
            case %pcount=3:return call( Method&,IFace&,&(3) )
            case %pcount=4:return call( Method&,IFace&,&(3),&(4) )
            endproc-----------------------------------------------------------------------
            declare IID#
            dim IID#,16
            declare dll&
            dll&=usedll(atl.dll)
            AtlAxWinInit()
            declare Web&
            Web&=control(AtlAxWin,Shell.Explorer.1,$50000000,300,10,400,400,%hwnd,0,0,$200)
            declare IUnknown&
            AtlAxGetControl(Web&,addr(IUnknown&))--IUnknown-Interface ermitteln
            declare IWebBrowser&
            StringToGUID {D30C1661-CDAF-11d0-8A3E-00C04FC9E26E},IID#-IID_IWebBrowser2
            CallMethod(IUnknown&,0,IID#,addr(IWebBrowser&))--IUnknown:QueryInterface
            CallMethod(IWebbrowser&,9)---------------------------------IWebbrowser:GoHome (Startseite)
            declare a&,a#
            dim a#,256

            while 1

                waitinput
                CallMethod(IWebbrowser&,30,addr(a&))--------------------IWebbrowser:get_LocationURL
                WideToMulti(a&,a#)
                settext %hwnd,URL :+string$(a#,0)
                SysFreeString(a&)--Buffer freigeben
                case %umessage=16:break

            endwhile

            destroywindow(Web&)
            case dll&:../function-references/xprofan/freedll/'>freedll dll&

Einziger Nachteil ist, das ein Klick auf einen Link nicht zum Durchbruch von WaitInput führt; da muss man erst nochmal woanders hin klicken. Aber das liesse sich je nach Verwendung z.B. per SetTimer umgehen.
Hoffe es hilft dir!
Pascal
 
07.12.2005  
 



Answer


Topictitle, max. 100 characters.
 

Systemprofile:

Kein Systemprofil angelegt. [anlegen]

XProfan:

 Posting  Font  Smilies  ▼ 

Bitte anmelden um einen Beitrag zu verfassen.
 

Topic-Options

1.693 Views

Untitledvor 0 min.
Thomas Freier18.07.2018
Peter Max Müller18.11.2017
A.Tietz30.11.2014
Dean Wood25.01.2013
Di più...

Themeninformationen



Admins  |  AGB  |  Applications  |  Autori  |  Chat  |  Informativa sulla privacy  |  Download  |  Entrance  |  Aiuto  |  Merchantportal  |  Impronta  |  Mart  |  Interfaces  |  SDK  |  Services  |  Giochi  |  Cerca  |  Support

Ein Projekt aller XProfaner, die es gibt!


Il mio XProfan
Private Notizie
Eigenes Ablageforum
Argomenti-Merkliste
Eigene Beiträge
Eigene Argomenti
Zwischenablage
Annullare
 Deutsch English Français Español Italia
Traduzioni

Informativa sulla privacy


Wir verwenden Cookies nur als Session-Cookies wegen der technischen Notwendigkeit und bei uns gibt es keine Cookies von Drittanbietern.

Wenn du hier auf unsere Webseite klickst oder navigierst, stimmst du unserer Erfassung von Informationen in unseren Cookies auf XProfan.Net zu.

Weitere Informationen zu unseren Cookies und dazu, wie du die Kontrolle darüber behältst, findest du in unserer nachfolgenden Datenschutzerklärung.


einverstandenDatenschutzerklärung
Ich möchte keinen Cookie