![]() |
Fehler mit TWebBrowser ( Meldung "Format %p ungültig)
Hallo
Habe ein Editfeld wo ich die Adresse reinkopiere das bei Änderung die URL aufrufen soll. Später soll das automatisch gehen, aber immer das hier: Folgende Fehlermeldung beim kopieren der Url oder nur eines Buchstabens in das EditFeld EConvertError Meldung "Format %p ungültig o. nicht kompatibel mit Argument
Delphi-Quellcode:
Das soll ja ein Format Fehler sein aber ich formatiere doch gar nichts.
procedure TFmHaupt.EdBrowser1Change(Sender: TObject);
begin WebBrowser1.Navigate(EdBrowser1.Text); WebBrowser1.SetFocus ; end; Besser noch wenn man die EXE ausserhalb von Delphi ausführt, kein Fehler. Vielleicht liegt das auch an den Einstellungen von Delphi, habe das wieder nach langer Zeit wieder installiert. Weiss einer Rat? |
Re: Fehler mit TWebBrowser ( Meldung "Format %p ungülti
Die .Navigate Methode hat mehr Parameter als nur die URL.
Ausserdem wird ein OleString als Datentyp erwartet. Deshalb sollte man Zwischenvariablen verwenden:
Delphi-Quellcode:
procedure TFrmHTMLUpload.Navigate;
var BrowserFlags : olevariant; MyTargetFrameName : olevariant; MyPostaData : olevariant; MyHeaders : olevariant; begin { Flags: Constant Value Meaning NavOpenInNewWindow $01 Open the resource or file in a new window. NavNoHistory $02 Do not add the resource or file to the history list. The new page replaces the current page in the list. NavNoReadFromCache $04 Do not read from the disk cache for this navigation. NavNoWriteToCache $08 Do not write the results of this navigation to the disk cache. NavAllowAutosearch $10 If the navigation fails, the Web browser attempts to navigate common root domains (.com, .org, and so on). If this still fails, the URL is passed to a search engine. } BrowserFlags := $02; MyTargetFrameName := null; MyPostaData := null; MyHeaders := null; Webbrowser1.Navigate(EdtURL.text, BrowserFlags,MyTargetFrameName,MyPostaData,MyHeaders); // WaitForBrowser(WebBrowser1); end; |
Re: Fehler mit TWebBrowser ( Meldung "Format %p ungülti
Herzlich willkommen in der Delphi-PRAXiS, bgallamv.
Die Methode Navigate() von TWebBrowser ist - auch unter D5 - mehrfach überladen und kann problemlos mit nur dem URL als einzigem Argument aufgerufen werden. Das Ereignis OnChange() eines Edit-Feldes, in dem ein URL eingetragen wird, ist definitiv ungeeignet zur Aktualisierung eines Browsers. Der würde ja für jeden einzelnen Buchstaben einen Fehler 404 nach entsprechendem Timeout liefern. Freundliche Grüße vom marabu |
Re: Fehler mit TWebBrowser ( Meldung "Format %p ungülti
Dank für die schnelle Antwort
Hab das auch schon in der Hilfe gelesen, aber nicht so eingebaut. Jetzt geändert, Fehler kommt immer noch. Eventuell doch etwas mit den Delphi Einstellungen zu tun? Wie gesagt, wenn man die EXE ausserhalb von Delphi startet, kommt kein Fehler Habe Delphi6 Enterprise
Delphi-Quellcode:
procedure TFmHaupt.EdBrowser1Change(Sender: TObject);
var BrowserFlags : olevariant; MyTargetFrameName : olevariant; MyPostaData : olevariant; MyHeaders : olevariant; begin BrowserFlags := $02; MyTargetFrameName := null; MyPostaData := null; MyHeaders := null; WebBrowser1.Navigate(EdBrowser1.Text,BrowserFlags,MyTargetFrameName,MyPostaData,MyHeaders); WebBrowser1.SetFocus ; end; |
Re: Fehler mit TWebBrowser ( Meldung "Format %p ungülti
Zitat:
etwas ändert. Also bei der Eingabe jedes Buchstabens wird das Ereignis ausgelöst und startet dann den Versuch sich mit der URL zu verbinden. Die URL ist dann aber noch nicht komplett... Ich würde das Navigate woanders einbauen. Grüße Klaus |
Re: Fehler mit TWebBrowser ( Meldung "Format %p ungülti
Dank für die Tips.
Aber bitte das Edit Feld ausser Acht lassen. Da werden später nur komplette Urls reinkopiert. Diese Fehlermeldung nervt mich so. Will nicht immer zum probieren erst die EXE ausserhalb von Delphi starten. Hab zur Probe mal noch schnell ein Formular gemacht mit Panel und WebBrowser. auch der gleiche Fehler
Delphi-Quellcode:
Eventuell muss ich irgendwas in Delphi einstellen?
procedure TForm1.Panel1Click(Sender: TObject);
begin WebBrowser1.Navigate(Panel1.Caption); end; |
Re: Fehler mit TWebBrowser ( Meldung "Format %p ungülti
Du hast leider noch nicht mitgeteilt welche Delphi-Version du verwendest. Ein Bug in D6 soll dazu führen, dass diese Fehlermeldung ausgegeben wird, wenn eigentlich eine ganz andere Mitteilung erfolgen sollte. Falls du mit D6 arbeitest, so solltest du dich vielleicht um ein Update kümmern.
Freundliche Grüße Nachtrag: Als erstes würde ich das Anhalten des Programms in der IDE zumindest für EConvertError abschalten (Debugger-Option). |
Alle Zeitangaben in WEZ +1. Es ist jetzt 06:05 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz