AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Delphi-PRAXiS - Lounge Betriebssysteme Absturz beim Programmstart unter Window NT
Thema durchsuchen
Ansicht
Themen-Optionen

Absturz beim Programmstart unter Window NT

Ein Thema von mjenke · begonnen am 25. Jun 2003 · letzter Beitrag vom 26. Jun 2003
Antwort Antwort
Seite 2 von 2     12   
mjenke

Registriert seit: 28. Mär 2003
Ort: Bonn
131 Beiträge
 
#11
  Alt 25. Jun 2003, 13:00
@r_kerber:
Innerhalb von FormActivate passieren mehrere Dinge, bevor das Registry-Objekt erzeugt wird. Aber keine einzige Anweisung innerhalb der FormActivate wird ausgeführt!

@Luckie:
Die Einträge liegen in HKLM, damit sie für jeden eingeloggten User gleichermassen zur Verfügung stehen. Allerdings würde ich - wenn ich denn überhaupt soweit käme - nur lesend auf die Schlüssel zugreifen. Per OpenKeyReadOnly.


Matthias
Matthias Jenke
  Mit Zitat antworten Zitat
mjenke

Registriert seit: 28. Mär 2003
Ort: Bonn
131 Beiträge
 
#12
  Alt 25. Jun 2003, 13:15
Noch eine Zusatzinfo:

Aus der Registry wird ein Pfad ausgelesen, der vom Benutzer an irgendeiner Stelle gesetzt werden kann...

Ich habe jetzt, um die Registry auszuschliessen, mal komplett den gesamten Code, der irgend etwas mit Registry-Zugriffen zu tun hat, auskommentiert (auch die Deklaration des TRegistry-Objektes) und den Pfad fest eingegeben. Der Absturz bleibt der gleiche...


Matthias
Matthias Jenke
  Mit Zitat antworten Zitat
Benutzerbild von r_kerber
r_kerber

Registriert seit: 11. Feb 2003
Ort: Trittau
3.538 Beiträge
 
Delphi XE Professional
 
#13
  Alt 25. Jun 2003, 13:18
Jetzt mußt Du feststellen, ob und welches CreateForm den Absturz hervorruft. In der dpr Breakpoint setzen und debuggen.
  Mit Zitat antworten Zitat
Benutzerbild von sakura
sakura

Registriert seit: 10. Jun 2002
Ort: Unterhaching
11.412 Beiträge
 
Delphi 12 Athens
 
#14
  Alt 25. Jun 2003, 13:56
Hast Du Dir jetzt eigentlich meinen Beitrag zu Herzen genommen und Messages zwischen die einzelnen Creates gesetzt? Diese werden alle ausgeführt, bevor das Hauptform aktiviert wird, damit ist der Fehler in einem der anderen Forms bzw. Module zu suchen!

......
Daniel Lizbeth
Ich bin nicht zurück, ich tue nur so
  Mit Zitat antworten Zitat
mjenke

Registriert seit: 28. Mär 2003
Ort: Bonn
131 Beiträge
 
#15
  Alt 25. Jun 2003, 14:08
@r_kerber und sakura:

Ach, Ihr habt ja so recht... Ich konnte das Problem jetzt sehr stark eingrenzen und die Form finden, in deren Create das Programm abschmiert. Warum es dort abstürzt, weiss ich noch nicht, aber tatsächlich konnte ich das Create ersteinmal auskommentieren, da der Dialog zur Zeit nicht benutzt wird. Das drängendste Problem ist damit beseitigt.

Vielen Dank Euch zwei! Der Hinweis war Gold wert!!!


Matthias
Matthias Jenke
  Mit Zitat antworten Zitat
Benutzerbild von sakura
sakura

Registriert seit: 10. Jun 2002
Ort: Unterhaching
11.412 Beiträge
 
Delphi 12 Athens
 
#16
  Alt 25. Jun 2003, 14:11
Sag ich doch Lade doch mal den Code des Create-Events hier hoch, vielleicht können wir das ja auch noch lösen

......
Daniel Lizbeth
Ich bin nicht zurück, ich tue nur so
  Mit Zitat antworten Zitat
mjenke

Registriert seit: 28. Mär 2003
Ort: Bonn
131 Beiträge
 
#17
  Alt 26. Jun 2003, 07:59
Hi, sakura!

Der Witz bei diesem Dialog ist, dass er keinen OnCreate-Code besitzt. Hier passiert ohnehin erstaunlich wenig (und glücklicherweise wird der Dialog - wie es nun aussieht - nicht mehr benötigt). Es gibt ein Query-Objekt und ein Datasource-Objekt. Ansonsten nur ein paar Buttons und ein DBGrid. Nichts dramatisches eigentlich.

Zum Reinschauen hier trotzdem mal der Code...

Code:
unit uKorrekrurbelicht;

interface

uses
  Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
  Grids, DBGrids, StdCtrls, Buttons, Db, DBTables;

type
  TfrmKorrekrurbelicht = class(TForm)
    DBGrid1: TDBGrid;
    BitBtn1: TBitBtn;
    SpeedButton1: TSpeedButton;
    DataSource1: TDataSource;
    Query1: TQuery;
    BitBtn2: TBitBtn;
    CheckBox1: TCheckBox;
    Label1: TLabel;
    procedure SpeedButton1Click(Sender: TObject);
    procedure FormShow(Sender: TObject);
  private
    { Private-Deklarationen }
  public
    { Public-Deklarationen }
  end;

var
  frmKorrekrurbelicht: TfrmKorrekrurbelicht;

implementation

uses udatModulAusgabe, uLfdNummer, uQRListe, udatModule, uATVConsts;

{$R *.DFM}

procedure TfrmKorrekrurbelicht.SpeedButton1Click(Sender: TObject);
begin
   with Query1 do
   begin
      with SQL do
      begin
        Clear;

        Add('SELECT DISTINCT D.LaufendeNummer, D.SortierBegriff, D.BearbeitungsStatus, D2.VerbindungsArt, D2.VerbindungsDaten, D3.Drucktext ');
        Add('FROM '+Firmen +' D, '+FirmenAnschriften+' D1, '+FirmenVerbindungen+' D2, '+FirmenDrucktexte+' D3 ');
        Add('WHERE ((D.BearbeitungsStatus = 1.0) OR (D.BearbeitungsStatus = 2.0)) ');
        Add('AND (D1.FirmaID = D.IDFirma) ');
        Add('AND (D2.FirmaID = D1.FirmaID) ');
        Add('AND (D2.AnschriftID = D1.IDAnschrift) ');
        Add('AND ((D2.VerbindungsArt = 3.0) OR (D2.VerbindungsArt = 4.0)) ');
        Add('AND (D3.FirmaID = D.IDFirma) ');
D2.VerbindungsDaten, D.BearbeitungsStatus');
        If frmLaufendeNummern.RadioButton1.Checked Then
          Add('ORDER BY D.' + SortierBegriff)
        else
          Add('ORDER BY D.' + LaufendeNummer);

     end;
     open;

   end;

   frmQRListe.Show;
   If not CheckBox1.Checked Then
     frmQRListe.Quickrep1.Print
   else
     frmQRListe.Quickrep1.Preview;

   frmQRListe.Close;

end;

procedure TfrmKorrekrurbelicht.FormShow(Sender: TObject);
begin
  Label1.Caption := IntToStr(datModulAusgabe.qryMKorrekturFirmenAnschriften.RecordCount);
end;

end.

Matthias
Matthias Jenke
  Mit Zitat antworten Zitat
Benutzerbild von sakura
sakura

Registriert seit: 10. Jun 2002
Ort: Unterhaching
11.412 Beiträge
 
Delphi 12 Athens
 
#18
  Alt 26. Jun 2003, 08:22
Einfach mal versuchen...
Code:
procedure TfrmKorrekrurbelicht.FormShow(Sender: TObject);
begin
  [color=#ff0000]try[/color]
    Label1.Caption := IntToStr(datModulAusgabe.qryMKorrekturFirmenAnschriften.RecordCount);
  [color=#ff0000]except
  end;[/color]
end;
......
Daniel Lizbeth
Ich bin nicht zurück, ich tue nur so
  Mit Zitat antworten Zitat
Christian Seehase
(Co-Admin)

Registriert seit: 29. Mai 2002
Ort: Hamburg
11.117 Beiträge
 
Delphi 11 Alexandria
 
#19
  Alt 26. Jun 2003, 14:41
Moin Zusammen,

oder so

Code:
procedure TfrmKorrekrurbelicht.FormShow(Sender: TObject);
begin
  [color=#ff0000]try[/color]
    Label1.Caption := IntToStr(datModulAusgabe.qryMKorrekturFirmenAnschriften.RecordCount);
  [color=#ff0000]except
    ShowMessage('HIER');
  end;[/color]
end;
Dann ist klar, dass auch eine Exception erfolgte, und nicht vielleicht zufällig nichts passiert ist.
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
Benutzerbild von sakura
sakura

Registriert seit: 10. Jun 2002
Ort: Unterhaching
11.412 Beiträge
 
Delphi 12 Athens
 
#20
  Alt 26. Jun 2003, 14:49
Wenn, dann ganz...
Code:
procedure TfrmKorrekrurbelicht.FormShow(Sender: TObject);
begin
  [color=#ff0000]try[/color]
    Label1.Caption := IntToStr(datModulAusgabe.qryMKorrekturFirmenAnschriften.RecordCount);
  [color=#ff0000]except
    on E: Exception do ShowMessage('Fehler: ' + E.Message);
  end;[/color]
end;
......
Daniel Lizbeth
Ich bin nicht zurück, ich tue nur so
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 2 von 2     12   


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 21:37 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