Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Win32/Win64 API (native code) (https://www.delphipraxis.net/17-win32-win64-api-native-code/)
-   -   Delphi Zugriffsverletzung HandleNeeded (https://www.delphipraxis.net/193501-zugriffsverletzung-handleneeded.html)

Thomas Feichtner 7. Aug 2017 14:58

Zugriffsverletzung HandleNeeded
 
Hallo ein Kunde bekommt hin und wieder eine Zugriffsverletzung. Woran kann das liegen?

Code:
0053afeb +0003 winmgm.exe  Controls   7825  +1 TWinControl.HandleNeeded
0053affb +0013 winmgm.exe  Controls   7827  +3 TWinControl.HandleNeeded
0053b011 +0005 winmgm.exe  Controls   7834  +1 TWinControl.GetHandle
00554286 +01b6 winmgm.exe  Forms      4828 +29 TCustomForm.ShowModal
operating system : Windows 2008 R2 x64 Service Pack 1 build 7601

Zacherl 7. Aug 2017 15:07

AW: Zugriffsverletzung HandleNeeded
 
Leider unmöglich zu sagen ohne weiteren Kontext. Eventuell mal madExcept oder Ähnliches einbinden.

Thomas Feichtner 7. Aug 2017 15:13

AW: Zugriffsverletzung HandleNeeded
 
MadExcept haben wir schon eingebunden.
Was müsstes du hier noch sehen? Beim Aufruf des Fenster passiert nicht wirklich etwas komisches. Es machen ja viele andere auch. Auch andere Benutzer bei diesem Kunden.
Nur hier kann ich nichts besonderes sehen.

Es betrifft bei diesen Kunden nur einen Arbeitsplatz und die Arbeiten auf einen Terminalserver. Andere Benutzer auch.
Und hin und wieder wenn ein Fenster geöffnet wird (ShowModal) dann kommt eben diese Meldung

Zacherl 7. Aug 2017 15:29

AW: Zugriffsverletzung HandleNeeded
 
Das Disassembly von der entsprechenden Stelle wäre nützlich und den exakten Wortlaut der Exception (mit Adresse etc).

stahli 7. Aug 2017 15:34

AW: Zugriffsverletzung HandleNeeded
 
Arbeitet Ihr da irgendwie mit mehren Threads?

Vielleicht sollte man sogar an ein Hardwareproblem oder Problem mit dem Grafiktreiber denken.

TiGü 7. Aug 2017 15:37

AW: Zugriffsverletzung HandleNeeded
 
Was ist denn auf dem Fenster zu sehen? Zeichnet ihr irgendwas per GDI, GDI+, DirectX, OpenGL oder ähnlichem? Ist darauf eine Browser-Komponente oder andere Spezialitäten?

Thomas Feichtner 7. Aug 2017 15:41

AW: Zugriffsverletzung HandleNeeded
 
Hallo!
Hier sind nur zwei Buttons von Devexpress, Panel und das Grid von Devexpress.

Bei diesem Fenster arbeiten wir nicht mit mehreren Threads.

Stevie 7. Aug 2017 15:45

AW: Zugriffsverletzung HandleNeeded
 
Der Callstack lässt darauf schließen, dass das Form, was hier modal angezeigt werden soll, seinen Parent gesetzt hat (2 Calls auf TWinControl.HandleNeeded, siehe Controls.pas)
Dass es dann im call des Parents knallt lässt erahnen, dass es den evtl nicht mehr gibt (Stichwort Dangling Pointer)

stahli 7. Aug 2017 16:18

AW: Zugriffsverletzung HandleNeeded
 
Wurde das Fenster gerade neu erzeugt oder war es vielleicht schon mal offen und beim vorherigen Schließen wurde etwas freigegeben, das jetzt fehlt?

Thomas Feichtner 9. Aug 2017 06:54

AW: Zugriffsverletzung HandleNeeded
 
Hallo

@Stevie: Eigentlich wird beim Parent nichts zerstört. Denn ich möchte ja wieder auf diese Fenster zurückkommen.

@stahli: Beim schließen werden nur die eigenen Sachen freigegeben.


Alle Zeitangaben in WEZ +1. Es ist jetzt 15:31 Uhr.
Seite 1 von 2  1 2      

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