AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Netzwerke Delphi Access Violations mit TWebBrowser
Thema durchsuchen
Ansicht
Themen-Optionen

Access Violations mit TWebBrowser

Ein Thema von Benedikt · begonnen am 19. Jul 2007 · letzter Beitrag vom 20. Jul 2007
Antwort Antwort
Seite 1 von 2  1 2      
Benedikt
(Gast)

n/a Beiträge
 
#1

Access Violations mit TWebBrowser

  Alt 19. Jul 2007, 00:01
Hi,

ich bekomme hier (konnte es leider bisher nur auf einem Rechner testen) regelmäßig AccessViolation wenn ich folgende Seite mit dem TWebBrowser aufrufe. D.h. ich gebe sie einfach als Parameter der Navigate-Funktion an.
Dann bekomme ich nicht nachvollziehbare AVs - auch nicht regelmäßig - und der WebBrowser verweigert danach den Dienst.
Hat irgendwer eine Ahnung wie ich das Umgehen könnte oder Ähnliches - bzw. kann jemand den Fehler nachvollziehen und hat eine zuverlässige Lösung dafür?

Hier die Seite bei der mir das aufgefallen ist:
http://www.selfphp.de/funktionsrefer...onen/array.php
http://www.selfphp.de/funktionsrefer...tionen/abs.php
http://www.selfphp.de/funktionsrefer...ionen/acos.php

Mit hoher Wahrscheinlichkeit kam der Fehler dann, wenn ich zwischen verschiedenen Seiten der SelfPHP-Funktionsreferenz hin und hergesprungen bin - bei anderen Seiten ist mir dieser Fehler bisher nicht aufgefallen...
Übrigens kam der Fehler bei mir auch in anderen Applikationen die den TWebBrowser nutzen, beispielsweise die aus diesem Thread:
http://www.delphipraxis.net/internal...ght=webbrowser

Mit freundlichen Grüßen und bestem Dank!

MfG Benedikt Loepp
  Mit Zitat antworten Zitat
ken_jones

Registriert seit: 16. Mai 2005
Ort: Luzern
154 Beiträge
 
Delphi 10 Seattle Enterprise
 
#2

Re: Access Violations mit TWebBrowser

  Alt 19. Jul 2007, 00:58
Wenn man (Delphi 5,6 und 7) eine TWebBrowser Komponente verwendet und plötzlich einen "Floating Point Error" bekommt (War bei mir der Fall) so liegt das an der angezeigten Seite. Diese beinhaltet möglicherweise Inhalte mit JavaScript. Falls dort Fliesskommaoperationen durchgeführt werden, kann es vorkommen, dass diese einen Fliesskommafehler verursachen, da Delphi diese anders rundet.

Kurzum, damit der Fehler verschwindet muss Delphi eine andere Rundung beigebracht werden. Dies geschieht am einfachsten mit dem Befehl:

Set8087CW($133F);

Und dies am besten gleich zu beginn des Programmes, in der Initialize Sektion oder sogar noch früher.

Vielleicht hilft das auch bei dir...
  Mit Zitat antworten Zitat
Nuclear-Ping
(Gast)

n/a Beiträge
 
#3

Re: Access Violations mit TWebBrowser

  Alt 19. Jul 2007, 04:59
Ich will ja nicht klugscheissen, aber ich bezweifel, dass Delphi das JavaScript in einer TWebBrowser-Komponente interpretiert.

Ich spekuliere mal eher, dass die Exception der IE-Kompo von Delphi abgefangen und dargestellt wird und dass folgender Fall greift:
Zitat von Delphi Hilfe:
[...] Außerdem bestimmt das Steuerwort, ob bei bestimmten Operationen mit Gleitkommawerten Exceptions ausgelöst werden. [...]

Es ist zum Beispiel empfehlenswert, alle Gleitkomma-Exceptions zu deaktivieren, wenn OpenGL zur Darstellung von 3D-Grafiken eingesetzt wird. Rufen Sie dazu (vor dem Aufruf einer OpenGL-Funktion) in der Ereignisbehandlungsroutine für OnCreate des Hauptformulars Set8087CW(0x133f) auf.
Set8087CW($133F) unterdrückt also nur die Exceptions.
  Mit Zitat antworten Zitat
Benedikt
(Gast)

n/a Beiträge
 
#4

Re: Access Violations mit TWebBrowser

  Alt 19. Jul 2007, 17:15
Im Prinzip helft ihr mir leider beide kein bisschen Wie ich bereits geschrieben hatte handelt es sich um eine Access Violation bei der von Floating Point Exception leider keine Rede ist. Hatte das auch schon einmal vorher so ausprobiert - jetzt nochmal - es hilft leider nicht.
Trotzdem Danke - evtl. hat aber jemand anders noch etwas dazu auf Lager?
  Mit Zitat antworten Zitat
Nuclear-Ping
(Gast)

n/a Beiträge
 
#5

Re: Access Violations mit TWebBrowser

  Alt 19. Jul 2007, 17:22
Delphi-Quellcode:
try
  WebBrowser1.Navigate ('...');
except
  {...}
end;
Schonmal damit versucht?
  Mit Zitat antworten Zitat
Benedikt
(Gast)

n/a Beiträge
 
#6

Re: Access Violations mit TWebBrowser

  Alt 19. Jul 2007, 21:59
Ja, damit hatte ich es auch schon versucht - keine Chance, das Programm stürzt trotzdem ab. Ich glaube der Fehler passiert erst nach dem eigentlichen Navigate intern in dem Webbrowser, deshalb ist dem auch so schwer beizukommen.
Musste jetzt allerdings gerade auf zwei anderen Rechnern feststellen dass es nicht zu dem Fehler kommt. Etwas merkwürdig das ganze - falls es noch jemand anderes direkt testen möchte ob es zu dem Fehler kommt, dann hab ich hier einen Link zu einem Testprogramm.

http://www.webocton.de/customer_files/webbrowser.exe

Wie gesagt, auf einem von drei Rechnern krieg ich damit sofort oder beim zweiten oder dritten Laden der Seite regelmäßig einen Absturz.
  Mit Zitat antworten Zitat
Nuclear-Ping
(Gast)

n/a Beiträge
 
#7

Re: Access Violations mit TWebBrowser

  Alt 19. Jul 2007, 23:06
Das rumnavigieren mit deinem Prog auf SelfPHP.de funzt hier ohne Probleme.
Windows Vista, IE 7. Scheint wohl was mit der IE-Version zu tun haben.
  Mit Zitat antworten Zitat
Benutzerbild von jakobwenzel
jakobwenzel

Registriert seit: 31. Aug 2005
Ort: Ingelheim am Rhein
141 Beiträge
 
FreePascal / Lazarus
 
#8

Re: Access Violations mit TWebBrowser

  Alt 19. Jul 2007, 23:13
Bei mir gehts unter XP HomeSP2 mit IE6 auch problemlos.
Jakob Wenzel
"My store now sells Ninja Weapons!"
Comicverkäufer bei den Simpsons
  Mit Zitat antworten Zitat
Nuclear-Ping
(Gast)

n/a Beiträge
 
#9

Re: Access Violations mit TWebBrowser

  Alt 19. Jul 2007, 23:18
Vielleicht sind irgendwelche IE-Sicherheitsrichtlinien dran schuld?
  Mit Zitat antworten Zitat
ken_jones

Registriert seit: 16. Mai 2005
Ort: Luzern
154 Beiträge
 
Delphi 10 Seattle Enterprise
 
#10

Re: Access Violations mit TWebBrowser

  Alt 20. Jul 2007, 15:30
Zitat von Nuclear-Ping:
Ich will ja nicht klugscheissen, aber ich bezweifel, dass Delphi das JavaScript in einer TWebBrowser-Komponente interpretiert.
Ich spekuliere mal eher, dass die Exception der IE-Kompo von Delphi abgefangen und dargestellt
Hast ja sowas von Recht! Genau so ist es. Jetzt fragt sich nur noch, ob die Komponente selber das Problem verursacht, oder der IE auf welchen die Komponente sicherlich zugreifen wird.

@Benedikt: Bei mir läuft das Program übrigens unter W2K mit IE5, XP mit IE7 sowie Vista Ultimate mit IE7 ohne Probleme. Hast du alle Windows Updates auf der Kiste drauf? Viren und vor allem AdWare frei? Virenscanner aktiv? Und und und...
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 09:56 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz