AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Win32/Win64 API (native code) Delphi Fehler 0x0eedfade in Kernelbase.dll
Thema durchsuchen
Ansicht
Themen-Optionen

Fehler 0x0eedfade in Kernelbase.dll

Ein Thema von Sumafu · begonnen am 7. Mai 2019 · letzter Beitrag vom 10. Mai 2019
Antwort Antwort
Klaus01

Registriert seit: 30. Nov 2005
Ort: München
5.779 Beiträge
 
Delphi 10.4 Sydney
 
#1

AW: Fehler 0x0eedfade in Kernelbase.dll

  Alt 7. Mai 2019, 14:36
.. hast Du die Möglichkeit MadExcept einzusetzen?

Grüße
Klaus
Klaus
  Mit Zitat antworten Zitat
OlafSt

Registriert seit: 2. Mär 2007
Ort: Hamburg
284 Beiträge
 
Delphi 10.2 Tokyo Professional
 
#2

AW: Fehler 0x0eedfade in Kernelbase.dll

  Alt 8. Mai 2019, 07:49
Wir haben das gleiche Phänomen hier mit einer D2007-Anwendung. Diese arbeitet aber sehr stark mit einem SQL-Server und produziert ab und zu eine Excel- oder PDF-Datei. Nach etwa 7 Minuten ohne Bedienung wird das Programm ohne jede Vorwarnung einfach aus dem Speicher geworfen, als würde man es mit dem Taskmanager abschießen.

MadExcept ist chancenlos, da es sich hier sehr wahrscheinlich um ein Windows-Problem handelt - der Eintrag im Eventlog zeigt das ja schon auf. Wir tippen auf ein Update seitens Windows, das nun plötzlich Stress macht. Wir konnten es nur noch nicht identifizieren.
  Mit Zitat antworten Zitat
hoika

Registriert seit: 5. Jul 2006
Ort: Magdeburg
8.277 Beiträge
 
Delphi 10.4 Sydney
 
#3

AW: Fehler 0x0eedfade in Kernelbase.dll

  Alt 8. Mai 2019, 08:11
Hallo,
das ist aber nicht das gleiche Phänomen.
Weil der TE immerhin eine Exception bekommt. Hier würde in der Tat MadExcept was bringen (siehe Klaus01).
Ich würde MadExcept einfach mit einem neuen leeren Projekt, wo z.B. eine "Division durch 0"-Exception provoziert wird.

Die Nutzung von MadExcept ist ja einfach.
- in Projekt-Optionen MadExcept einstellen (ein Haken "enable MadExcept")
in der DPR werden jatzt an ersteer Stelle diverse MadExcept-Unis eingebunden
(haken wieder raus und die Units sind wieder weg)
- beiden Compilereinstellungen alles rein was geht (Laufzeitfehler, Debug-Informationen ...)
Optimierung sollte so stehen bleiben wie im Release
- bei den Linkereinstellungen TD32 und externe Debugsymbole

Wenn die Exe jetzt 3mal so gross ist, war alles richtig.

Ein Test wäre

{$IFDEF MADEXCEPT}
i,j: Integer;
i := StrToInt('0');
j := 10 div i;
{ENDIF}
Das erzeugt die Div/0-Exception.

Ergebnis ist ein MadExcept-Dialog, unter Stack-Trace findet man die genaue Ziele, die die Exception verursacht, incl. Unit-/Prozedurname/Zeilennummer.

Einfach mal ausprobieren!
Heiko
  Mit Zitat antworten Zitat
Sumafu

Registriert seit: 30. Aug 2017
9 Beiträge
 
#4

AW: Fehler 0x0eedfade in Kernelbase.dll

  Alt 10. Mai 2019, 13:43
MadExcept sieht sehr vielversprechend aus, allerdings kostet das bei kommerzieller Nutzung was. Und ein "vielleicht könnte es helfen" wird dem Chef als Begründung vermutlich nicht reichen, zumal wir das nur für diesen einen Fall bräuchten, und sonst nicht.
  Mit Zitat antworten Zitat
EWeiss
(Gast)

n/a Beiträge
 
#5

AW: Fehler 0x0eedfade in Kernelbase.dll

  Alt 10. Mai 2019, 13:55
Zitat:
denn ich bin mir selbst nicht sicher, was überhaupt der Fehler ist.
Traurig.
Zitat:
Am Ende wird aufgeräumt
Möchte ich bezweifeln denn es kommt nicht umsonst die Fehlermeldung EOutOfResources.. falls du die Meldung nicht kennst bzw. weist was es bedeutet hier nähere Informationen
Zitat:
MadExcept ist chancenlos, da es sich hier sehr wahrscheinlich um ein Windows-Problem handelt
Auch das möchte ich sehr bezweifeln denn die Fehlermeldung ist doch eindeutig.
Zitat:
MadExcept sieht sehr vielversprechend aus... Und ein "vielleicht könnte es helfen" wird dem Chef als Begründung vermutlich nicht reichen
Ohne es mal versucht zu haben und der Verwendung unserer altbewährten
wird dir hier wohl niemand weiter helfen können.

Ich würde überall da wo Handles erstellt werden einen Breakpoint setzen und beim beenden bzw. neu Erzeugung vorher prüfen ob das letzte freigegeben wurde.
Ansonsten kann man nur Raten. Von einem leeren Blatt Papier kann man nun mal nicht lesen.

gruss

Geändert von EWeiss (10. Mai 2019 um 14:06 Uhr)
  Mit Zitat antworten Zitat
Sumafu

Registriert seit: 30. Aug 2017
9 Beiträge
 
#6

AW: Fehler 0x0eedfade in Kernelbase.dll

  Alt 10. Mai 2019, 14:05
Zitat:
denn ich bin mir selbst nicht sicher, was überhaupt der Fehler ist.
Traurig.
Zitat:
Am Ende wird aufgeräumt
Möchte ich bezweifeln denn es kommt nicht umsonst die Fehlermeldung EOutOfResources.. falls du die Meldung nicht kennst bzw. weist was es bedeutet hier nähere Informationen
Ich weiß sehr wohl was eine EOutOfRessource Fehlermeldung bedeutet. Allerdings weiß ich auch, dass diese Fehlermeldung in Delphi für alle möglichen Fehler zweckentfremdet wird. Klar KANN es ein Fehler beim Allokieren eine Handles sein, muss es aber nicht.
Eine weitere Analyse hat ergeben, dass der Fehler tatsächlich dann auftritt, wenn Delphi versucht, eine Form zu erstellen (Application.CreateForm). Aber nichts desto trotz ist das nicht ein typischer EoutOfResources Fehler, da der Rechner definitiv genügend Resourcen hat. Alle Gründe, aus denen "EoutOfResources" offiziell kommen sollte, treffen meiner Analyse nach nicht zu. Ich habe dahingehend auch schon diverse Tests gemacht mit verschiedenen Registry Schaltern, die Resourcen, Handles und GDI betreffen, alles ohne Erfolg.
  Mit Zitat antworten Zitat
hoika

Registriert seit: 5. Jul 2006
Ort: Magdeburg
8.277 Beiträge
 
Delphi 10.4 Sydney
 
#7

AW: Fehler 0x0eedfade in Kernelbase.dll

  Alt 10. Mai 2019, 14:05
Hallo,
EOutOfResources ist eine Delphi-Exception.
MadExcept müsste zumindestens die Zeile finden,
die diese Exception verursacht, also wahrscheinlich das FindFirst (weil der interne Speicher doch irgendwie nicht freigegeben wurde).

Zu langsam.
Heiko
  Mit Zitat antworten Zitat
Sumafu

Registriert seit: 30. Aug 2017
9 Beiträge
 
#8

AW: Fehler 0x0eedfade in Kernelbase.dll

  Alt 10. Mai 2019, 14:09
Hallo,
EOutOfResources ist eine Delphi-Exception.
MadExcept müsste zumindestens die Zeile finden,
die diese Exception verursacht, also wahrscheinlich das FindFirst (weil der interne Speicher doch irgendwie nicht freigegeben wurde).

Zu langsam.
Da muss ich dann zugeben, dass meine Vermutung, dass es an der Prüfroutine liegt, höchstwahrscheinlich falsch war (der Fall beschäftigt mich jetzt schon so lange, dass schon mal Informationen im Hirn verloren gehen).
Es ist die Startroutine, wenn Delphi versucht mit Application.CreateForm ein Fenster zu erstellen. Zumindest wird das FormCreate Event nicht mehr ausgeführt. Das Fenster ist ziemlich spartanisch und hat kaum GDI-Objekte, daran liegt es also nicht. Siehe auch meine letzte Antwort.
  Mit Zitat antworten Zitat
EWeiss
(Gast)

n/a Beiträge
 
#9

AW: Fehler 0x0eedfade in Kernelbase.dll

  Alt 10. Mai 2019, 14:10
Hallo,
EOutOfResources ist eine Delphi-Exception.
MadExcept müsste zumindestens die Zeile finden,
die diese Exception verursacht, also wahrscheinlich das FindFirst (weil der interne Speicher doch irgendwie nicht freigegeben wurde).

Zu langsam.
Er will es nicht verwenden scheint dem Boss zu teuer von daher ist ein jeglicher weitere Versuch Helfen zu wollen sinnlos.
Deshalb bin ich auch wieder raus.
Viel glück hoffe du findest den Fehler noch.

PS:
Zitat:
da der Rechner definitiv genügend Resourcen hat
Was haben die Resourcen des Rechners mit dem nicht freigeben von Handles zu tun? Gar nichts.
Definiere doch einfach mal was bei dir ein typischer EoutOfResource Fehler ist. Dann hast du schon halb gewonnen.

Nun gut wie dem auch sei.

gruss

Geändert von EWeiss (10. Mai 2019 um 14:41 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 22:14 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