AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren

access violation beim beenden

Ein Thema von Nicodius · begonnen am 20. Mai 2007 · letzter Beitrag vom 21. Mai 2007
Antwort Antwort
Seite 1 von 2  1 2   
Nicodius

Registriert seit: 25. Apr 2003
Ort: Graz
2.234 Beiträge
 
Delphi 2006 Architect
 
#1

access violation beim beenden

  Alt 20. Mai 2007, 10:35
hi leute

beim beenden von meinem programm kommt folgender fehler wenn ich nur in einer combobox werte eingefügt habe
wie kann das sein? wenn ich in keiner bzw beiden was eingebe gehts?


Zitat:
access violation at 0xfffffff: read of address 0xfffffff
C4 BC 4D 00 CC BC 4D 00 00 00 00 00
code ist leider zu umfangreich - im close steht eigentlich nur eine abfrage zum speichern drinnen.

lg nico
Nico Müller
  Mit Zitat antworten Zitat
Benutzerbild von Sharky
Sharky

Registriert seit: 29. Mai 2002
Ort: Frankfurt
8.248 Beiträge
 
Delphi 2006 Professional
 
#2

Re: access violation beim beenden

  Alt 20. Mai 2007, 10:45
Zitat von Nicodius:
... code ist leider zu umfangreich - im close steht eigentlich nur eine abfrage zum speichern drinnen....
Hai Nico,

steht im OnClose jetzt "nur" Code zum speichern oder "eigentlich nur Code" zum speichern?
Zeige doch mal zumindest diesen Codeabschnitt?

Bist Du schon einmal mit dem Debugger durch dein OnClose gelaufen?
Stephan B.
"Lasst den Gänsen ihre Füßchen"
  Mit Zitat antworten Zitat
Nicodius

Registriert seit: 25. Apr 2003
Ort: Graz
2.234 Beiträge
 
Delphi 2006 Architect
 
#3

Re: access violation beim beenden

  Alt 20. Mai 2007, 10:48
servus

onclose :

Delphi-Quellcode:
  if saved = false then
    if Application.MessageBox(
        'Datei wurde noch nicht gespeichert. Wirklich beenden?', 'Fehler!', MB_YesNo) = IDYes then close else
        Speichern1Click(Sender)
  else close;
speichern1 :

Delphi-Quellcode:
var FaDatei: file of Talles;
begin
  if SaveDialog1.Execute then // Dialog zum Speichern anzeigen
  begin
    AssignFile(FaDatei, SaveDialog1.FileName);
    Rewrite(FaDatei); // Ausgabedatei öffnen
    Write(FaDatei, Alles);
    CloseFile(FaDatei);
  end;
  saved := true;
danke für deine zeit

nico
Nico Müller
  Mit Zitat antworten Zitat
fwsp
(Gast)

n/a Beiträge
 
#4

Re: access violation beim beenden

  Alt 20. Mai 2007, 10:50
was ist Alles ist das beim speichern noch vorhanden?
  Mit Zitat antworten Zitat
Benutzerbild von Matze
Matze
(Co-Admin)

Registriert seit: 7. Jul 2003
Ort: Schwabenländle
14.987 Beiträge
 
Turbo Delphi für Win32
 
#5

Re: access violation beim beenden

  Alt 20. Mai 2007, 10:53
Mir erscheint es sehr unlogisch, im OnClose nochmals Close aufzurufen, das wäre dann ja eine Art Rekursion. Lass das mal weg.
  Mit Zitat antworten Zitat
Nicodius

Registriert seit: 25. Apr 2003
Ort: Graz
2.234 Beiträge
 
Delphi 2006 Architect
 
#6

Re: access violation beim beenden

  Alt 20. Mai 2007, 10:54
der fehler passiert auch wenn vorher gespeichert wurde(es komtm also gar nicht den ablauf dort rein) - kan nalso damit nix zu tun haben

lg nico
Nico Müller
  Mit Zitat antworten Zitat
Nicodius

Registriert seit: 25. Apr 2003
Ort: Graz
2.234 Beiträge
 
Delphi 2006 Architect
 
#7

Re: access violation beim beenden

  Alt 20. Mai 2007, 10:55
Zitat von Matze:
Mir erscheint es sehr unlogisch, im OnClose nochmals Close aufzurufen, das wäre dann ja eine Art Rekursion. Lass das mal weg.
hat damit nix zu tun weils nur passiert wenn die eine combobox nur gefüllt is - aber vielen dank das is zusätzlich unsinn gewesen ;D


edit es passiert jetzt irgendwie doch auch wenn beide beschrieben sind ich glaub ich geh den ganzen code nochmal durch
hat wahrscheinlich irgendwas mit den werten im alles zu tun(das ist ein record )

wenn ich daten nämlich per laden aus einer vorher erstellten datei drinnen habe passiert nix und es läuft wie gewünscht

lg nico
Nico Müller
  Mit Zitat antworten Zitat
Nachteule

Registriert seit: 22. Mär 2007
Ort: München
37 Beiträge
 
Delphi 2009 Enterprise
 
#8

Re: access violation beim beenden

  Alt 20. Mai 2007, 11:01
Auszug aus der Delphi Hilfe
Delphi-Quellcode:
procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction);

begin
  if MessageDlg('Close application ?', mtConfirmation,
    [mbYes, mbNo], 0) = mrYes then
    Action := caFree
  else
    Action := caNone;
end;
siehe Action
  Mit Zitat antworten Zitat
Nicodius

Registriert seit: 25. Apr 2003
Ort: Graz
2.234 Beiträge
 
Delphi 2006 Architect
 
#9

Re: access violation beim beenden

  Alt 20. Mai 2007, 11:05
so vielen dank

habs herausgefunden hab bei der ersten combobox dummerweise den itemindex von combo2 verlangt und der war wenn da nix drinnensteht ja -1 und das hat mein array im record nicht gerne gesehn ;D

lg nico
Nico Müller
  Mit Zitat antworten Zitat
Christian Seehase
(Co-Admin)

Registriert seit: 29. Mai 2002
Ort: Hamburg
11.262 Beiträge
 
Delphi 2006 Professional
 
#10

Re: access violation beim beenden

  Alt 20. Mai 2007, 13:35
Moin Nico,

so eine Abfrage gehört besser in das OnCloseQuery.
Tschüss Chris
Die drei Feinde des Programmierers: Sonne, Frischluft und dieses unerträgliche Gebrüll der Vögel.
Der Klügere gibt solange nach bis er der Dumme ist
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2   

Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

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 08:19 Uhr.
Powered by vBulletin® Copyright ©2000 - 2019, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2019 by Daniel R. Wolf