![]() |
Fehler: AccessViolation, nur warum...
Delphi-Quellcode:
Ich bekomme ne Fehlermeldung in der Steht was von EAccessviolation... keine ahnung was mir das sagen soll....
unit Unit2;
interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, XpMan, StdCtrls, Menus, OleCtrls, SHDocVw_TLB, ComCtrls; type TForm1 = class(TForm) Edit1: TEdit; Edit2: TEdit; Memo1: TMemo; ComboBox1: TComboBox; Edit3: TEdit; Label1: TLabel; Label2: TLabel; Label3: TLabel; Label4: TLabel; MainMenu1: TMainMenu; Main1: TMenuItem; Label5: TLabel; WebBrowser1: TWebBrowser; Button1: TButton; PageControl1: TPageControl; TabSheet1: TTabSheet; TabSheet2: TTabSheet; ProgressBar1: TProgressBar; Label6: TLabel; Verlauf1: TMenuItem; Beenden1: TMenuItem; ffnen1: TMenuItem; Lschen1: TMenuItem; procedure Lschen1Click(Sender: TObject); procedure ffnen1Click(Sender: TObject); procedure Beenden1Click(Sender: TObject); procedure WebBrowser1ProgressChange(ASender: TObject; Progress, ProgressMax: Integer); procedure Button1Click(Sender: TObject); procedure FormCreate(Sender: TObject); private { Private-Deklarationen } public { Public-Deklarationen } end; var Form1: TForm1; implementation {$R *.dfm} procedure TForm1.FormCreate(Sender: TObject); begin pagecontrol1.ActivePage:=tabsheet2; TOleControl(Webbrowser1).Visible := False; form1.DoubleBuffered:=true; Combobox1.Items.Add('mth.Main'); Combobox1.Items.Add('mth.Alternative'); Combobox1.Items.Add('mth.Club'); Combobox1.Items.Add('mth.Electro'); Combobox1.Items.Add('mth.Black'); Combobox1.Items.Add('mth.Break'); Combobox1.Items.Add('mth.House'); Combobox1.ItemIndex:=0; Memo1.Text:=''; WebBrowser1.Navigate('http://www.shouted.fm/index.php'); end; procedure TForm1.Button1Click(Sender: TObject); begin WebBrowser1.OleObject.document.forms.item(1).elements.item('name').value:=Edit1.Text; WebBrowser1.OleObject.document.forms.item(1).elements.item('alter').value:=Edit3.Text; WebBrowser1.OleObject.document.forms.item(1).elements.item('wohnort').value:=Edit2.Text; WebBrowser1.OleObject.document.forms.item(1).elements.item('stream').selectedIndex:=ComboBox1.ItemIndex; WebBrowser1.OleObject.document.forms.item(1).elements.item('nachricht').value:=memo1.Text; WebBrowser1.OleObject.document.forms.item(1).submit; end; procedure TForm1.WebBrowser1ProgressChange(ASender: TObject; Progress, ProgressMax: Integer); begin if webbrowser1.ReadyState = 0 then begin progressbar1.Position:=20; end else if webbrowser1.ReadyState = 1 then begin progressbar1.Position:=35; end else if webbrowser1.ReadyState = 2 then begin progressbar1.Position:=60; end else if webbrowser1.ReadyState = 3 then begin progressbar1.Position:=100; pagecontrol1.ActivePage:=tabsheet1; end end; procedure TForm1.Beenden1Click(Sender: TObject); begin close; end; procedure TForm1.ffnen1Click(Sender: TObject); begin ShowMessage('Noch nicht implementiert'); end; procedure TForm1.Lschen1Click(Sender: TObject); begin ShowMessage('Noch nicht implementiert'); end; end. |
Re: Komische Fehlermeldung!!!
Hi,
bei welchem Ereignis bzw. in welcher Zeile tritt der Fehler auf? Und nur als Hinweis: Ich würde im OnCreate nie Komponenten verarbeiten, denn es ist nicht garantiert, dass diese bereits erzeugt wurden. |
Re: Komische Fehlermeldung!!!
Zitat:
Hattest Du schon mal Probleme und kannst du dies in einem Testprojekt nachvollziehbar gestalten. |
Re: Komische Fehlermeldung!!!
Zitat:
|
Re: Komische Fehlermeldung!!!
Zitat:
1, Du hast sehr viele Controls und du läufst in Resourcenprobleme 2, Die Controls versuchen schon beim Zugriff auf Properties mit Windowshandles zu arbeiten die es evtl. noch nicht haben. |
Re: Komische Fehlermeldung!!!
:warn: Ändere bitte den Titel. "Komische Fehlermeldung" ist nicht aussagekräftig :roll:
...:cat:... |
Re: Komische Fehlermeldung!!!
Moin!
Kann jetzt sein, dass ich kompletten Blödsinn rede, ich mache selten was mit OLEObjecten dieser Art. Aber darf ich trotzdem eine Frage stellen? Wieso schreibst du:
Delphi-Quellcode:
Aber sprichst den TWebBrowser sonst immer direkt an?
TOleControl(Webbrowser1).Visible := False;
Kann da der Fehler liegen? Gruß, Max |
Re: Komische Fehlermeldung!!!
Delphi-Quellcode:
Ja da hab ich mich am anfang auch gewundert, aber wenn man die Visible eigenschaft über
TOleControl(Webbrowser1).Visible := False;
Delphi-Quellcode:
anspreicht reagiert der webbrowser nicht! das ist also wohl nicht der fehler!
Webbrowser1.visible:=false;
Allerdings wennich das programm im debugger anhalte, zeigt er mir folgende zeile an!
Delphi-Quellcode:
da muss also irgendwo der fehler dirn sein, ich hab nur keinen plan warum! oder muss ich ein editfeld gesondert ansprechen, wenn es auf einem tabsheet vom pagecontrol liegt? das wär das einzige was cih mir im moment vorstellen könnte!
WebBrowser1.OleObject.document.forms.item(1).elements.item('name').value:=Edit1.Text;
|
Re: Komische Fehlermeldung!!!
Hallo Ente,
Du wurst gestern schon darum gebeten, den Titel Deines Thema zu ändern. Komische Meldungen erhalten viele von uns und keiner kann sich etwas Rechtes darunter vorstellen. Ein aussagekräftiger Titel ist der erste Schritt zu einer passenden Lösung. |
Re: Fehler: AccessViolation, nur warum...
Moin,
Also, wie du bereits feststellen konntest wird die Fehlersuche nicht einfach. Ich schlage einfach mal vor du verstreust ein paar Breakpoints(Ich hoffe du weisst was ich meine) in deinem Code. Damit kannst du den Fehler leicht ausmachen. Sag' dann nochmal bescheid. Gruß, Max |
Alle Zeitangaben in WEZ +1. Es ist jetzt 15:25 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 by Thomas Breitkreuz