Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

Fragen zu Entwicklung von BHO (Browser Helper Object)

Frage Entwicklung

Mitglied: ketchup

ketchup (Level 1) - Jetzt verbinden

08.11.2005, aktualisiert 17:07 Uhr, 5333 Aufrufe, 4 Kommentare

versuche ein BHO zu schreiben, verstehe zwar die grundlegenden Punkte, bin aber leider (noch) kein versierter Programmierer für windows

ich möchte mich mit der Entwicklung von BHOs beschäftigen und bin da gerade am Anfang.
Hab gegooglet, aber noch nicht den richtigen Hinweis, Anleitung für mich gefunden.

unter <link="http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnwebg ..." Helper Objects: The Browser the Way You Want It</link> hab ich zwar eine Anleitung gefunden, verstehe auch die notwendigen Schritte, weiß sie allerdings nicht in C++ umzusetzen.

kann mir da bitte jemand Hinweise, Anregungen, Tipps, Links, ... geben?

ich habe auch schon ein "fertiges" Skelet für meine DLL.
Lässt sich auch problemlos compilieren und als BHO registrieren.
Als test-BHO möchte ich einfach mal die eingegebene URL auslesen und ausgeben/abspeichern.

ich habe 2 functions:
<font class="code">
STDMETHODIMP CMySpyware::SetSite(IUnknown *pUnkSite)
{
CComQIPtr<IWebBrowser2, &IID_IWebBrowser2> m_spWebBrowser2;
CComQIPtr<IConnectionPointContainer,
&IID_IConnectionPointContainer> m_spCPC;


Retrieve and store the IWebBrowser2 pointer
m_spWebBrowser2 = pUnkSite;
if (m_spWebBrowser2 == NULL)
return E_INVALIDARG;

Retrieve and store the IConnectionPointerContainer pointer
m_spCPC = m_spWebBrowser2;
if (m_spCPC == NULL)
return E_POINTER;


return S_OK;
}
</font>
<font class="code">
STDMETHODIMP CMySpyware::Invoke(DISPID dispidMember, REFIID riid, LCID lcid, WORD wFlags,
DISPPARAMS* pDispParams, VARIANT* pvarResult,
EXCEPINFO* pExcepInfo, UINT* puArgErr)
{

open file?
switch (dispidMember)
{
case DISPID_BEFORENAVIGATE:
break;

case DISPID_NAVIGATECOMPLETE2:
break;
}


write string to file?
// close file?
return S_OK;
}
</font>

wenn ich den MS-Artikel richtig verstehe, dann wird SetSite() immer aufgerufen, dort bekomme ich einen Pointer auf IWebBrowser2 zurück, danach brauch ich einen Pointer um einen event listener zu registrieren.
Bei einem Event wird dann Invoke() aufgerufen, wobei ich dort je nach Event verschiedene Actions setzen kann (zB Abspeichern der URL).

nur jetzt weiß ich nicht mehr weiter
ist das soweit richtig von mir?

thx.
jürgen
Mitglied: 13100
08.11.2005 um 14:55 Uhr
| CMySpyware

wir brauchen mehr spyware, auf jeden.
Bitte warten ..
Mitglied: ketchup
08.11.2005 um 15:03 Uhr
der class-name ist von einem code im inetz geklaut
Bitte warten ..
Mitglied: 13100
08.11.2005 um 16:12 Uhr
du sollst doch nich klauen. was will er den eigentlich für nen bho machen.
Bitte warten ..
Mitglied: ketchup
08.11.2005 um 17:07 Uhr
du sollst doch nich klauen. was will er den
eigentlich für nen bho machen.

war ja nur abgeschaut
möchte mich etwas mit dem aufbau vom IE beschäftigen. und natürlich auch was er alles kann oder nicht kann *gg*

zum kennenlernen möchte ich halt mal ein einfaches BHO schreiben, welches zB auf die eingabe einer URL reagiert und mir die aufgerufene URL einfach wo ausgibt oder abspeichert.
an so komplizierte dinge wie DOM oder so will ich im moment noch gar nicht denken *gg*

kannst du mir vielleicht gute anhaltspunkte geben?

jürgen
Bitte warten ..
Neuester Wissensbeitrag
Microsoft Office

MS Office Excel - Formel wird angezeigt, aber nicht berechneter Wert!

Tipp von holli.zimmi zum Thema Microsoft Office ...

Ähnliche Inhalte
Exchange Server
gelöst MS Exchange 2016 - Basicconfig Fragen (16)

Frage von maddig zum Thema Exchange Server ...

Instant Messaging
Krypto-Messenger Threema jetzt im Web-Browser nutzbar

Link von magicteddy zum Thema Instant Messaging ...

Firewall
gelöst Offene Fragen zu iptables (4)

Frage von Lars15 zum Thema Firewall ...

Heiß diskutierte Inhalte
Exchange Server
Bestehende eMails autoamatisch weiterleiten (21)

Frage von metal-shot zum Thema Exchange Server ...

Hyper-V
gelöst Reiner Hyper- V Server oder lieber Rolle (21)

Frage von Winuser zum Thema Hyper-V ...

SAN, NAS, DAS
gelöst Synology Version 6.1 Probleme (18)

Frage von Hendrik2586 zum Thema SAN, NAS, DAS ...

Router & Routing
gelöst IP Kamera für drei unabhängige Netzwerke (16)

Frage von ProfessorZ zum Thema Router & Routing ...