Einzelnen Beitrag anzeigen

superenra

Registriert seit: 29. Jan 2011
4 Beiträge
 
#1

Problem mit Laufzeitfehler / Debuggen ohne Entwicklungsumgebung

  Alt 29. Jan 2011, 14:22
Hallo zusammen, bin neu hier, habe mich gerade registriert.

Ich habe ein Problem mit einem Programm, welches ich auf einem fremden PC (habe 2 Systeme ausprobiert) partout nicht laufen will. Merkwürdigerweise funktionierte dieses Programm auf diesen beiden PCs vorher problemlos, seit der letzten Änderung aber garnicht mehr. Das Programm steigt nun mit der bekannten Fehlermeldung "...Soll der Fehler an Microsoft gesendet werden..." aus, also ziemlich nichtsagend.
Dieser Fehler lässt sich in meiner Entwicklungsumgebung nicht nachvollziehen. Das Kolpilieren und Ausführen klappt dort problemlos. Seit der letzten Änderung wurden keine neuen Komponenten verwendet. Die Änderungen befinden sich nicht an der Stelle im Code, wo das Programm aussteigt.

Ich habe nun zwei Fragen:
1. Gibt es irgendeine Art Debugger oder sonstiges Programm, welches mir auf dem Zielsystem etwas mehr Informationen über den Fehler geben kann, ohne dass ich dort eine Entwicklungsumgebung installiere?

2. Hat jemand mit Hilfe der folgenden Problembeschreibung eine Idee, wo das Problem liegen könnte?

Entwicklungsumgebung: Delphi 7, vcl
OS auf den Zielrechnern: Windows XP und Windows Server 2003

Ich habe zuerst versucht, den Fehler mit showmessage einzugrenzen. Demnach tritt der Fehler ziemlich zu Anfang der Initialisierung auf.

Erster Versuch war dieser (in der .dpr-Datei):
Delphi-Quellcode:
...
begin
  Application.Initialize;
  Application.Title := 'xxxxxxx';
  showmessage('marke1');
  Application.CreateForm(TDM_MCO, DM_MCO);
  showmessage('marke2');
  Application.CreateForm(TFormMain, FormMain);
  Application.Run;
end.
...
Ergebnis: "marke1" erschien, danach Fehler.

Also: Suche im "DataModuleCreate" von TDM_MCO:
Delphi-Quellcode:
...
procedure TDM_MCO.DataModuleCreate(Sender: TObject);
var
 i : Integer;
 SibFilePath : string;
begin
  showmessage('marke3');
  inherited;
...
Bis zu "marke3" kommt das Programm bereits nicht mehr. Ich habe auch im Create der übergeordneten Klasse Marken gesetzt, diese werden aber erst nach "marke3" durchlaufen.
Meiner Meinung nach liegt zwischen "marke1" und "marke3" nur Delphi-eigener Code, der den Fehler verursachen kann. Ich bin ziemlich ratlos. Jemand eine Idee?

Geändert von superenra (29. Jan 2011 um 14:24 Uhr)
  Mit Zitat antworten Zitat