dh User-Agent WxWidgets
-
04-07-2019 - |
Frage
Im mit derzeit dh als aktiver x com Sache auf wxWidgets und wollte wissen, ob es eine einfache Möglichkeit ist es, die User-Agenten zu ändern, die immer funktionieren werden.
Ändern Atm im den Header Das funktioniert aber nur, wenn ich laden manuell den Link (das heißt nennen setUrl)
Lösung
Der einzige Weg, die „immer arbeiten“, wird so weit wie ich in der Lage gewesen zu finden, ist , um den User-Agent-String in der Registry ändern. Das wird natürlich beeinflussen alle Web-Browser-Instanz auf dem Computer ausgeführt wird.
Sie können auch eine Google-Suche auf DISPID_AMBIENT_USERAGENT
versuchen. Von dieser Microsoft-Seite :
MSHTML wird auch für einen neuen Benutzer fragen Mittel via
DISPID_AMBIENT_USERAGENT
bei der Navigation Hyperlinks angeklickt. Diese Ambient-Eigenschaft kann sein außer Kraft gesetzt, aber es wird nicht verwendet, wenn programmatisch Aufruf der Navigation Methode; es wird auch die nicht dazu führen, Useragent-Eigenschaft des DOM Navigator Objekt oder clientInformation Verhalten geändert werden - diese Eigenschaft wird immer reflektieren Internet Explorer eigener Useragent-String.
Ich bin nicht vertraut mit der MSHTML-Komponente, also ist mir nicht sicher, das ist hilfreich.
Ich hoffe, dass zumindest gibt Ihnen einen Ort zu starten. : -)
Andere Tipps
habe ich ein bisschen heute mit dem Hinweis googeln Sie Kopf Aussenseiter zur Verfügung gestellt und ich arbeitete heraus, wie es zu tun.
wxWidgets verwendet eine activex Rapper Klasse namens Frameseite, die die invoke-Anforderungen verarbeitet. Was ich tat, war eine neue Klasse machen, die von diesem erbt, übernimmt das DISPID_AMBIENT_USERAGENT Ereignis und leitet alle andere auf. So jetzt kann ich einen anderen User-Agenten zurück.
Danke für die Hilfe.
Kopf Geek Ihnen schon gesagt, wo in der registy IE standardmäßig aussehen wird.
Dies ist nur ein Standard, though. Wenn Sie implementieren [IDocHostUIHandler :: GetOptionKeyPath] ( http : //msdn.microsoft.com/en-us/library/aa753258 (VS.85% 29.aspx) oder [IDocHostUIHandler2 :: GetOverrideKeyPath] ( http://msdn.microsoft.com/en-us/library/aa753274 (VS.85% 29. aspx) , IE wird diesen Registrierungseintrag verwendet statt.
Sie werden wahrscheinlich wollen SysInternals RegMon verwenden, um dies zu debuggen.