AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Object-Pascal / Delphi-Language Windows-Meldung: Programm funktioniert nicht mehr
Thema durchsuchen
Ansicht
Themen-Optionen

Windows-Meldung: Programm funktioniert nicht mehr

Ein Thema von Mossi · begonnen am 4. Apr 2018 · letzter Beitrag vom 4. Apr 2018
Antwort Antwort
Der schöne Günther

Registriert seit: 6. Mär 2013
6.196 Beiträge
 
Delphi 10 Seattle Enterprise
 
#1

AW: Windows-Meldung: Programm funktioniert nicht mehr

  Alt 4. Apr 2018, 08:51
Nein, OnTerminate muss schon zugewiesen sein.

Ich erkenne mich nur insofern wieder als ich genau so etwas auch mal hatte. Das Exception-Tracking der JCL hatte nichts mehr geloggt, aber das Programm verabschiedete sich definitiv mit "Programm funktioniert nicht mehr". Ursache war eine Exception im OnTerminate -Event eines Threads.
  Mit Zitat antworten Zitat
Mossi

Registriert seit: 6. Feb 2004
Ort: Wenzenbach
35 Beiträge
 
Delphi 7 Enterprise
 
#2

AW: Windows-Meldung: Programm funktioniert nicht mehr

  Alt 4. Apr 2018, 09:00
War wohl nix... OnTerminate hab ich nur relativ selten benutzt und die haben alle ein sauberes Exception-Handlung oder machen nur simple Zuweisungen bei denen keine Exception auftreten kann.

Gibt es bei diesem Fehler nicht irgendwo einen Dump, den man analysieren kann? Ähnlich wie bei Windows Bluescreens.
  Mit Zitat antworten Zitat
EWeiss
(Gast)

n/a Beiträge
 
#3

AW: Windows-Meldung: Programm funktioniert nicht mehr

  Alt 4. Apr 2018, 09:09
War wohl nix... OnTerminate hab ich nur relativ selten benutzt und die haben alle ein sauberes Exception-Handlung oder machen nur simple Zuweisungen bei denen keine Exception auftreten kann.

Gibt es bei diesem Fehler nicht irgendwo einen Dump, den man analysieren kann? Ähnlich wie bei Windows Bluescreens.
Ja..
C:\Users\Username\AppData\Local\CrashDumps

gruss
  Mit Zitat antworten Zitat
Benutzerbild von KodeZwerg
KodeZwerg

Registriert seit: 1. Feb 2018
3.691 Beiträge
 
Delphi 11 Alexandria
 
#4

AW: Windows-Meldung: Programm funktioniert nicht mehr

  Alt 4. Apr 2018, 09:59
Könnte es sein das da wo dein Programm auf Daten zugreifen möchte, bei Wiederholten Aufruf der Cache benutzt wird und beim Nachladen nach einer Stunde ist der Festspeicher im Standby, womit dein Programm nicht klarkommt?
(Will was lesen von Quelle - im ersten Moment fehlt's - da Gerät im Standby)
Gruß vom KodeZwerg
  Mit Zitat antworten Zitat
Mossi

Registriert seit: 6. Feb 2004
Ort: Wenzenbach
35 Beiträge
 
Delphi 7 Enterprise
 
#5

AW: Windows-Meldung: Programm funktioniert nicht mehr

  Alt 4. Apr 2018, 13:35
Könnte es sein das da wo dein Programm auf Daten zugreifen möchte, bei Wiederholten Aufruf der Cache benutzt wird und beim Nachladen nach einer Stunde ist der Festspeicher im Standby, womit dein Programm nicht klarkommt?
(Will was lesen von Quelle - im ersten Moment fehlt's - da Gerät im Standby)
Kann ich mir nicht vorstellen. Ich hab vorhin nebenbei auf dem Rechner "gearbeitet", also Dumps analysiert und Registry und Files mit einem anderen Rechner verglichen und auch währenddessen trat dann genau dieser Fehler auf. Aber die Idee ist gut. Hatte ich so noch nie, aber vielleicht kann man die Info mal brauchen

Die Analyse der Dumps war leider auch wenig erfolgreich.
Code:
Call stack with StackWalk


Index

Return Address

1 0x80000000`00000000 (0x00000000)
2 0x000425e8 (0x000425e8)
3 0x0015ca00 (0x0015ca00)
4 0x110003e0 (0x110003e0)
5 0x80000000`00000000 (0x00000000)
6 0x08be1b1b (0x08be1b1b)
7 pc_professional+37a5fb (0x0077a5fb)
8 0x80000000`00000000 (0x00000000)
9 0x80000000`00000000 (0x00000000)
10 clrjit!Compiler::psiNewPrologScope+10 [f:\dd\ndp\clr\src\jit32\scopeinfo.cpp @ 910 + 9] (0x70be1b0b)
11 0x1e055bfd (0x1e055bfd)
12 0x80000000`00000000 (0x00000000)
13 pc_professional+7ab7fa (0x00bab7fa)
14 0x04000000 (0x04000000)
15 0x4b000000 (0x4b000000)
16 0x80000000`00000000 (0x00000000)
17 0x80000000`00000000 (0x00000000)
18 0x0c003020 (0x0c003020)
19 0x28755511 (0x28755511)
20 0x34003041 (0x34003041)
21 0x08fffffd (0x08fffffd)
22 xpdfviewerctrl (0x10000000)
23 0x80000000`00000000 (0x00000000)
24 0x4c000002 (0x4c000002)
25 0x40000000 (0x40000000)
26 0x1a000001 (0x1a000001)
27 0x2277a5fb (0x2277a5fb)
28 pc_professional+137a5fa (0x0177a5fa)



Call stack - Heuristic


Index

Stack Address

Child EBP

Return Address

Destination

1 0x00000000`00000000 0x00000000`3c055bfd 0x00000000 0x00000000 

                       ^ Memory access error in 'u 0x000425e8  l1'
                       ^ Memory access error in 'u 0x0015ca00  l1'
                       ^ Memory access error in 'u 0x110003e0  l1'
Das es sich um einen memory access error handelt, hab ich davor auch schon gewusst durch den Fehlercode c0000005
Ich hab jetzt nochmal eine Version mit Debug-Symbolen zum Kunden kopiert und hoffe, dass ich dann mehr rauslesen kann. Aber irgendwie hab ich die dumme Vermutung, dass der Fehler jetzt nicht mehr auftreten wird... ein Bauchgefühl.

Aber beim analysieren der Dumps ist mir noch was anderes aufgefallen. Vielleicht hat da jemand eine Info, was das bedeuten könnte:
Ganz am Ende gibt es den Abschnitt "Analysis Rule Summary" und der sieht folgendermaßen aus:
Code:
CrashHangAnalysis - v (2.2.0.14) Failed Dump File: D:\PC_Professional.exe.1788.dmp;

Type: System.OverflowException

Message: Der Wert für einen Int32 war zu groß oder zu klein.

Stack Trace:
 bei System.Convert.ToInt32(Double value)
 bei DebugDiag.AnalysisRules.StackFunctions.AnalyzeCorruptStack(ScriptThreadClass Thread)
 bei DebugDiag.AnalysisRules.AnalyzeCrash.AnalyzeAV(NetDbgException ExceptionObj, ScriptThreadClass ExceptionThread, Boolean suppressSummary)
 bei DebugDiag.AnalysisRules.AnalyzeCrash.AnalyzeException(NetDbgException ExceptionObj, ScriptThreadClass ExceptionThread, Boolean suppressSummary)
 bei DebugDiag.AnalysisRules.AnalyzeCrash.AnalyzeExceptionThread(ScriptThreadClass Thread)
 bei DebugDiag.AnalysisRules.CrashHangAnalysis.RunAnalysisRule(NetScriptManager manager, NetProgress progress)
 bei DebugDiag.DotNet.NetAnalyzer.RunAnalysisRulesInternal(DumpFileType bitness, NetProgress progress, String symbolPath, String imagePath, String reportFileFullPath, Boolean twoTabs, AnalysisModes analysisMode)
Intuitiv würde ich da jetzt sagen, dass es sich dabei um eine Exception vom DebugDiag handelt, die nichts mit meiner Anwendung zu tun hat. Oder lieg ich dabei falsch? Ansonsten müsste ich danach suchen, wo ich in einer .NET Assembly einen falschen Int zuweise und das wird dann endgültig keinen Spaß mehr machen.
  Mit Zitat antworten Zitat
ConstantGardener

Registriert seit: 24. Jan 2006
Ort: Halberstadt
376 Beiträge
 
Delphi 10.4 Sydney
 
#6

AW: Windows-Meldung: Programm funktioniert nicht mehr

  Alt 4. Apr 2018, 13:37
....haben die Kunden evtl. TeamViewer (und hier die QuickConnect-Schaltfläche) am laufen. Hatte letztens genau dieses Verhalten, wenn das Dingen sich in die Systemleiste eingeklinkt hatte. Danach habe ich meine Anwendung in die Ausnahmenliste dieser TeamViewer-Funktion (es gibt recht viele unverträgliche Programme) verfrachtet und schon ging es. Aber finde sowas mal...

cu cg
Andreas Schachtner
  Mit Zitat antworten Zitat
Benutzerbild von Jasocul
Jasocul

Registriert seit: 22. Sep 2004
Ort: Delmenhorst
1.368 Beiträge
 
Delphi 11 Alexandria
 
#7

AW: Windows-Meldung: Programm funktioniert nicht mehr

  Alt 4. Apr 2018, 13:54
Vielleicht stochere ich jetzt ein wenig im Nebel, aber die Zeile 10 im Dump und der Hinweis, dass du .Net-Assemblies eingebunden hast, könnte auch auf Probleme mit dem Garbage-Collector oder clrjit Dll hinweisen.
Peter
  Mit Zitat antworten Zitat
Mossi

Registriert seit: 6. Feb 2004
Ort: Wenzenbach
35 Beiträge
 
Delphi 7 Enterprise
 
#8

AW: Windows-Meldung: Programm funktioniert nicht mehr

  Alt 4. Apr 2018, 14:21
....haben die Kunden evtl. TeamViewer (und hier die QuickConnect-Schaltfläche) am laufen. Hatte letztens genau dieses Verhalten, wenn das Dingen sich in die Systemleiste eingeklinkt hatte. Danach habe ich meine Anwendung in die Ausnahmenliste dieser TeamViewer-Funktion (es gibt recht viele unverträgliche Programme) verfrachtet und schon ging es. Aber finde sowas mal...

cu cg
Das hatte ich auch schon mal vor einiger Zeit. Ist's aber in diesem Fall nicht.

Das irritiert mich auch ein bisschen, was diese Methode machen soll und hab auch keine weiteren Informationen dazu gefunden. Ich find auch keinen Hinweis darauf, welche Assembly da aufgerufen werden sollte. ich verwende zwar ein paar Assemblies, aber die haben ebenfalls alle ein Logging drin und da finde ich nirgends ein Problem.
RuntimeDLLs hab ich bereits geprüft. Die sollten passen.

Von den Betriebssystemen kann ich es mittlerweile einschränken auf Windows 7 64 Bit. Weitere Einschränkung. Es handelt sich immer um Core2Duo Prozessoren. Aber es fehlen noch weitere Einschränkungen, weil es bei anderen Kunden mit gleicher Hardware keine Probleme gibt. Weitere Gemeinsamkeiten konnte ich jetzt noch nicht finden.

Ist auch schwierig auszuprobieren, weil das Problem eben immer erst nach ca. einer Stunde auftritt. Das macht das Fehlersuchen nicht gerade einfacher.
  Mit Zitat antworten Zitat
MichaelT

Registriert seit: 14. Sep 2005
Ort: 4020 Linz
558 Beiträge
 
Delphi 10.3 Rio
 
#9

AW: Windows-Meldung: Programm funktioniert nicht mehr

  Alt 4. Apr 2018, 14:30
Deswegen auch meine Vermutung.

Ich kenne das Sterben bspw. wenn ich einen Apache oder ein PHP nehme und manuell installiere.

Die Funktion kommt vermutlich aus dem Kernel direkt. Müssen wir mal schauen.

Handelt es sich um ein 32-bit Anwendung (also deine ist gemeint).

Das gab es mal Troubles mit .net auf Win64 und Core Duo. Erkennen der Bittigkeit des Prozessors usw...

Ich bin kein Systemhacker. Deswegen bin ich nicht immer so up to date mit den letzen Entwicklungen.


Von den Betriebssystemen kann ich es mittlerweile einschränken auf Windows 7 64 Bit. Weitere Einschränkung. Es handelt sich immer um Core2Duo Prozessoren. Aber es fehlen noch weitere Einschränkungen, weil es bei anderen Kunden mit gleicher Hardware keine Probleme gibt. Weitere Gemeinsamkeiten konnte ich jetzt noch nicht finden.

Ist auch schwierig auszuprobieren, weil das Problem eben immer erst nach ca. einer Stunde auftritt. Das macht das Fehlersuchen nicht gerade einfacher.

Geändert von MichaelT ( 4. Apr 2018 um 15:00 Uhr)
  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 03:24 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-2025 by Thomas Breitkreuz