AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Sonstige Fragen zu Delphi Delphi Fehler in Anwendung?!? Windows 2000 Pro
Thema durchsuchen
Ansicht
Themen-Optionen

Fehler in Anwendung?!? Windows 2000 Pro

Ein Thema von towi · begonnen am 21. Aug 2002 · letzter Beitrag vom 22. Aug 2002
Antwort Antwort
towi

Registriert seit: 21. Aug 2002
3 Beiträge
 
#1

Fehler in Anwendung?!? Windows 2000 Pro

  Alt 21. Aug 2002, 14:40
Hallo,

beim Start meines Programmes unter Windows 2000, erhalte ich die Fehlermeldung "Die Anweisung in"0x00403f57
" verweist auf Speicher in "0x696e6f70". Der "read" konnte nicht auf dem Speicher durchgeführt werden.".
Kann mir da jemand weiterhelfen?
Servus! Towi
  Mit Zitat antworten Zitat
Daniel
(Co-Admin)

Registriert seit: 30. Mai 2002
Ort: Hamburg
13.920 Beiträge
 
Delphi 10.4 Sydney
 
#2
  Alt 21. Aug 2002, 14:55
Es wäre mehr als hilfreich, wenn Du uns nähere Infos über Dein Programm geben würdest oder auch, welche Massnahmen Du bereits ergriffen hast, um dem Fehler auf die Schliche zu kommen. Ich tippe auf ein nicht initialisiertes Objekt, auf das Du da zugreifen willst.

Die erste Massnahme besteht i.A. darin, aus der Delphi IDE heraus mit F7 oder F8 per Einzelschritt durch die Programmzeilen zu laufen, um zu sehen, bei welcher Anweisung der Fehler auftritt.
Führt dies nicht zum Erfolg, weil vor dem Auftreten des Fehlers einfach zu viele Anweisungen abgearbeitet werden, so greife ich immer zu grosszügig im relevanten Code verteilten Messageboxen. Das ist nicht besonders elegant, hilft aber, einen Fehler schnell einzukreisen.
Man bestückt den Code also in regelmässigen Abständen mit dem Aufruf MessageBox("xxx") und merkt sich dann beim Programmablauf, nach welcher Messagebox der Fehler auftrat. Schon hat man in etwa die Fehlerquelle.

Wenn Du die Fehlerquelle dann eingekreist hast, und dennoch nicht weiter weist, dann kannst Du ja -wenn Du magst- die betreffende Stelle hier in einem Beitrag hinterlegen und dann schauen wir alle gemeinsam drauf .


Grüße,
Daniel
Daniel R. Wolf
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#3
  Alt 21. Aug 2002, 15:01
Wenn man eine Vermutung hat, dann kannman ch den Cursor in die Prozedur stellen und F4 drücken. Dann bleibt er beim Ausführen an der Stelle stehen und du kannst ab da mit F7 weitermachen.

Wenn irgend etwas fehlschlägt hilft manchmal auch ein GetLastError:
Code:
procedure DisplayErrorMsg(hWnd: THandle);
var
   szBuffer: array[0..255] of Char;
begin
   FormatMessage(FORMAT_MESSAGE_FROM_SYSTEM, nil, GetLastError(), 0, szBuffer,
     sizeof(szBuffer), nil);
   MessageBox(hWnd, szBuffer, 'Fehler', MB_ICONSTOP);
end;
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
Daniel
(Co-Admin)

Registriert seit: 30. Mai 2002
Ort: Hamburg
13.920 Beiträge
 
Delphi 10.4 Sydney
 
#4
  Alt 21. Aug 2002, 15:04
@Luckie: Stimmt natürlich.
Hehehe. Bin von diesen herkömmlichen Methoden im Laufe der Zeit abgewichen, da diese es nicht gestatten, auch über DLLs hinweg einen Fehler zu verfolgen.


Grüße,
Daniel
Daniel R. Wolf
  Mit Zitat antworten Zitat
Christian Seehase
(Co-Admin)

Registriert seit: 29. Mai 2002
Ort: Hamburg
11.116 Beiträge
 
Delphi 11 Alexandria
 
#5
  Alt 21. Aug 2002, 15:48
Moin Zusammen,

und wer die VCL benutzt kann sich auch mit dieser Zeile behelfen:

Code:
ShowMessage(SysErrorMessage(GetLastError)));
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
towi

Registriert seit: 21. Aug 2002
3 Beiträge
 
#6
  Alt 22. Aug 2002, 11:58
Hallo,

vielen dank für die vielen Beiträge.
Also, dieser Effekt tritt nur unter Win2000 (Firmenrechner) auf. Leider ist z.Z. nirgendwo anders Win2000 installiert.
Das Programm habe ich erfolgreich mit WinXP Pro und älteren Win-Versionen (95/98/98SE) getestet. Dort ist der Fehler nie aufgetreten.
Als Programmierumgebung verwende ich Win98SE. Das Programm erstellt beim ersten Aufruf einen Registry-Eintrag zum Speichern der Startanzahl, sowie des Startdatums. Vermutlich, liegt darin das Problem, denn ohne Speichern in der Registry funktioniert alles ohne Fehler!
Servus!
Torsten
  Mit Zitat antworten Zitat
Christian Seehase
(Co-Admin)

Registriert seit: 29. Mai 2002
Ort: Hamburg
11.116 Beiträge
 
Delphi 11 Alexandria
 
#7
  Alt 22. Aug 2002, 12:15
Moin Torsten,

dann wäre es ganz hilfreich, wenn Du mal den Codeabschnitt mit dem Eintragen der Daten in die Registry vorzeigst.
Auch wenn ich mir im Moment nicht so unmittelbar erklären kann, wieso der Fehler nur unter 2000 aber nicht unter XP Pro auftritt.
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
towi

Registriert seit: 21. Aug 2002
3 Beiträge
 
#8
  Alt 22. Aug 2002, 13:56
Hallo Christian,

vielen Dank für Deine Antwort.
Ich benutze Win2000 Pro inkl. ServicePack2 und mit SP3 zusätzlich.
Nachdem ich SP3 wieder deinstalliert habe (aus anderen Gründen), funktioniert mein Prog wieder Perfekt.
Also, liegt es anscheinend am SP3.
Servus!
Torsten
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#9
  Alt 22. Aug 2002, 14:53
In welchem Schlüssel erstellt du die Einträge?

In HKLM?

Da hast du nur als Admin Schreibrechte und wenn du auf dem XP-Rechner Admin bist geht es. Auf demm Firmen-Rechner bist du wohl kein Admin und dann geht es nicht.
Michael
Ein Teil meines Codes würde euch verunsichern.
  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 02:31 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