AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Sonstige Fragen zu Delphi Delphi Fehler mit TWebBrowser ( Meldung "Format %p ungültig)
Thema durchsuchen
Ansicht
Themen-Optionen

Fehler mit TWebBrowser ( Meldung "Format %p ungültig)

Ein Thema von bgallamv · begonnen am 1. Jun 2007 · letzter Beitrag vom 1. Jun 2007
Antwort Antwort
bgallamv

Registriert seit: 1. Jun 2007
3 Beiträge
 
#1

Fehler mit TWebBrowser ( Meldung "Format %p ungültig)

  Alt 1. Jun 2007, 15:26
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:
procedure TFmHaupt.EdBrowser1Change(Sender: TObject);
begin
 WebBrowser1.Navigate(EdBrowser1.Text);
 WebBrowser1.SetFocus ;
end;
Das soll ja ein Format Fehler sein aber ich formatiere doch gar nichts.
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?
  Mit Zitat antworten Zitat
shmia

Registriert seit: 2. Mär 2004
5.508 Beiträge
 
Delphi 5 Professional
 
#2

Re: Fehler mit TWebBrowser ( Meldung "Format %p ungülti

  Alt 1. Jun 2007, 17:07
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;
Andreas
  Mit Zitat antworten Zitat
marabu

Registriert seit: 6. Apr 2005
10.109 Beiträge
 
#3

Re: Fehler mit TWebBrowser ( Meldung "Format %p ungülti

  Alt 1. Jun 2007, 17:23
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
  Mit Zitat antworten Zitat
bgallamv

Registriert seit: 1. Jun 2007
3 Beiträge
 
#4

Re: Fehler mit TWebBrowser ( Meldung "Format %p ungülti

  Alt 1. Jun 2007, 18:47
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;
  Mit Zitat antworten Zitat
Klaus01

Registriert seit: 30. Nov 2005
Ort: München
5.767 Beiträge
 
Delphi 10.4 Sydney
 
#5

Re: Fehler mit TWebBrowser ( Meldung "Format %p ungülti

  Alt 1. Jun 2007, 19:01
Zitat von marabu:

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
wie marabu schon sagte, das onChange Ereignis wird immer dann abgefeuert wenn sich in Deiner Editbox
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
Klaus
  Mit Zitat antworten Zitat
bgallamv

Registriert seit: 1. Jun 2007
3 Beiträge
 
#6

Re: Fehler mit TWebBrowser ( Meldung "Format %p ungülti

  Alt 1. Jun 2007, 20:40
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:
procedure TForm1.Panel1Click(Sender: TObject);
begin
 WebBrowser1.Navigate(Panel1.Caption);
end;
Eventuell muss ich irgendwas in Delphi einstellen?
  Mit Zitat antworten Zitat
marabu

Registriert seit: 6. Apr 2005
10.109 Beiträge
 
#7

Re: Fehler mit TWebBrowser ( Meldung "Format %p ungülti

  Alt 1. Jun 2007, 21:42
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).
  Mit Zitat antworten Zitat
Antwort Antwort


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 05:01 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