Quelltext einer Webseite auslesen // anderen Browser vorgaukeln
-
Hallo,
ich habe BCB 6.
Welche IE-Version nutzt die denn?
-
Die, die auf deinem Rechner drauf. Das ist eine COM Komponente vom System.
-
OK, dann scheint die TCppWebBrowser-Komponente aber etwas anderes zu übertragen.
Auf meinem Rechner ist der IE8. Wenn ich damit die Webseite aufrufe, dann klappt alles einwandfrei.Rufe ich mit dem obigen Code die Webseite auf, bekomme ich die Meldung, dass ich einen der vier genannten Browser nutzen soll, also kann die TCppWebBrowser-Komponente sich nicht als IE8 ausgeben.
Oder kann ich der TCppWebBrowser-Komponente irgendwo vorgeben, als welcher Browser sie sich ausgeben soll?
-
Hallo W.Stecher,
ruf mal direkt vom IE 8 und von deinem Programm (mittels der TCppWebBrowser-komponente) die Seite http://www.aadmm.de/de/index.php?lang=de&page=browser-und-plugin-abfrage.html auf und vergleiche die Ergebnisse.
Edit: anscheinend verwendet das darunterliegende ActiveX-Control bei installiertem IE8 den IE7-Modus.
Unter http://blogs.msdn.com/b/ie/archive/2009/03/10/more-ie8-extensibility-improvements.aspx gibt es einen Registry-Eintrag, um den IE8-Modus zu aktivieren.
-
Hallo Th69,
habe ich gemacht.
Beim Aufruf der Seite direkt aus dem IE8 erhalte ich folgede Informationen:**Browsername:
Microsoft Internet ExplorerHTTP-Identifikation:
Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 5.1; Trident/4.0; Tablet PC 1.7; .NET CLR 1.0.3705; .NET CLR 1.1.4322; .NET CLR 2.0.50727; .NET CLR 3.0.04506.648; .NET CLR 3.5.21022; .NET CLR 3.0.4506.2152; .NET CLR 3.5.30729)**Beim Aufruf aus meiner Applikation erhlate ich die Meldung:
Error 404 - ein Fehler ist aufgetreten
Die Anfrage konnte nicht eindeutig identifiziert werden, wir bitten diesen Umstand zu entschuldigen.Daran ändert sich auch nichts, wenn ich den Registryeintrag für meine Anwenudng setze. Egal ob DOWRD 8000 (IE8_Standard) oder 8888 (IE8 forced).
Verschleiert die TCppWebBrowser-Komponente ihre Identität bzw. Engine?
-
Hallo,
das ist wirklich sehr merkwürdig.
Hast du denn evtl. einen anderen Rechner zur Verfügung, mit dem du das Programm testen kannst? Oder kannst du dein Programm (mit Aufruf der von mir verlinkten Seite) irgendwo uploaden, so daß ich es mal auf meinen Rechnern ausführen kann?
-
Hey,
habe leider erst wieder Ende dieser Woche einen 2. Rechner zur Verfügung.
Wäre daher sehr dankbar, wenn Du (auch) einmal testen könntest.Die Exe habe ich als Zip (23 KB) hier hochgeladen:
http://www.file-upload.net/download-4334832/eToro.zip.htmlDANKE.
-
Hallo,
da ich keinen BCB6 hier habe, fehlen mir einige DLLs. Könntest du dein Projekt "ohne Laufzeitpackages" kompilieren und "ohne dynamische RTL" linken, s. http://www.mbdealer.de/standalone-exe-datei-erstellen ?
-
Hey,
natürlich, wenn Du schon so nett bist und testest, ist das ja wohl das mindeste, was ich machen kann.
Ich vergesse das grundsätzlich immer und merke es erst, wenn das fertige Projekt von meinem Entwicklungsrechner auf meinen Desktop wandert und dann dort aufgrund fehlender DLLs nicht läuft ...
Jetzt ist alles drin, sind 383 KB als ZIP:
http://www.file-upload.net/download-4335366/eToro.zip.htmlDanke.
-
Danke.
Leider kriege ich auf meinem Arbeitsrechner (Win7, IE8) auch "Error 404" (mit und ohne aktiviertem Registry-Key).
Ich werde es heute abend noch mal zuhause auf meinem XP-Rechner probieren...
P.S. Das eigenartige ist, daß wenn ich über dein Programm (eToro.exe) auf der Testseite auf "Browser Infos" klicke und dort dann bei "Browser und Plugins abfragen" den Link "Abfrage jetzt starten" drücke, dann die korrekten Infos erhalte (und zwar egal, ob der Registry-Key aktiviert ist oder nicht):
Browsername Microsoft Internet Explorer HTTP-Identifikation Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.1; Trident/4.0; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; Media Center PC 6.0; .NET4.0C; .NET4.0E; Tablet PC 2.0)
-
W.Stecher schrieb:
Ich vergesse das grundsätzlich immer und merke es erst, wenn das fertige Projekt von meinem Entwicklungsrechner auf meinen Desktop wandert und dann dort aufgrund fehlender DLLs nicht läuft ...
=> VMs zum Testen nehmen
Außerdem kann man das auch in den Standardprojektoptionen irgendwo einstellen, dann hast du das Problem bei zukünftigen Projekten nicht mehr.
-
Hallo W.Stecher,
auch zuhause (XP, IE8) erhalte ich die Fehlermeldung "Error 404".
Da es aber dann per von-Hand-navigieren funktioniert, denke ich, daß es irgendwie an den TCppWebBrowser-Einstellungen bzw. dem Aufruf liegt.
Du könntest mal den erzeugten HTTP-Request mitloggen, z.B. mittels WireShark.