Deutsch
Forum

HTML Control

 

Georg
Bernhardt
Hallo,
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 dürfte, 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&: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  
 



Antworten


Thementitel, max. 100 Zeichen.
 

Systemprofile:

Kein Systemprofil angelegt. [anlegen]

XProfan:

 Beitrag  Schrift  Smilies  ▼ 

Bitte anmelden um einen Beitrag zu verfassen.
 

Themenoptionen

1.698 Betrachtungen

Unbenanntvor 0 min.
Thomas Freier18.07.2018
Peter Max Müller18.11.2017
A.Tietz30.11.2014
Dean Wood25.01.2013
Mehr...

Themeninformationen



Admins  |  AGB  |  Anwendungen  |  Autoren  |  Chat  |  Datenschutz  |  Download  |  Eingangshalle  |  Hilfe  |  Händlerportal  |  Impressum  |  Mart  |  Schnittstellen  |  SDK  |  Services  |  Spiele  |  Suche  |  Support

Ein Projekt aller XProfaner, die es gibt!


Mein XProfan
Private Nachrichten
Eigenes Ablageforum
Themen-Merkliste
Eigene Beiträge
Eigene Themen
Zwischenablage
Abmelden
 Deutsch English Français Español Italia
Übersetzungen

Datenschutz


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