Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   Komische Fehler beim Debugging (https://www.delphipraxis.net/199566-komische-fehler-beim-debugging.html)

skoschke 1. Feb 2019 13:28

Komische Fehler beim Debugging
 
Hallo,

beim Debuggen einer MDI-Anwendung bekomme ich massig folgende blau hinterlegte Meldungen im Debugfenster:

Prozess TMeinProjekt.exe (7628)
Debug-Ausgabe:
windows\dwm\dwmapi\attribute.cpp(92)\dwmapi.dll!72 1D3CF4: (caller: 723990ED) ReturnHr(69) tid(3990) 80070006 Das Handle ist ungültig.

Ich habe nicht die geringste Ahnung wo ich da ansetzen könnte und woher das kommen könnte!

Ich habe solche Meldungen vorher noch nie gesehen!

Kann mir bitte jemand auf die Sprünge helfen?

Ciao
Stefan

Nachtrag:
Ich bekomme schon 2 dieser Meldungen im Ereignisprotokoll wenn ich aus der IDE auf das Fenster der debuggten Anwendung wechsle ohne dass im Code irgendwas abläuft!

Sherlock 1. Feb 2019 13:56

AW: Komische Fehler beim Debugging
 
DWMApi ist die Desktop Window Manager API. Wie sagt man so schön "Nachtigall ick hör dir trapsen". Die Abkündigung von MDI scheint hier Früchte zu tragen.

Spaß beiseite: Wie sieht es mit einer kleinen Testanwendung aus? Kommen diese Fehler da auch?

Sherlock

Delphi.Narium 1. Feb 2019 14:03

AW: Komische Fehler beim Debugging
 
Gibt bitte mal dashier windows\dwm\dwmapi\attribute.cpp(92)\dwmapi.dll!72 1D3CF4 bei der Tante Google ein. Dann erscheint eine überschaubar kleine Menge Einträge, in denen sich noch mehr Leute über dieses Problem beklagen. Es ist nichts delphispezifisches. Eventuell findest Du da ja irgendeinen Hinweis auf einen möglichen Lösungsansatz.

Habe auf die Schnelle nix finden können, außer dass das wohl ein Debuggingproblem unter Windows 10 zu sein scheint.

skoschke 1. Feb 2019 15:14

AW: Komische Fehler beim Debugging
 
Zitat:

Wie sieht es mit einer kleinen Testanwendung aus? Kommen diese Fehler da auch?
IDE: Neues Projekt erstellen-> MDI Anwendung und im Debugmode starten, ein neues Fenster erzeugen, Fehler erscheint!

Die wenigen Google-Funde habe ich auch überflogen, aber keine Lösung gefunden!

Wenn MDI nicht mehr geht (aber unsere Kunden sind mehrere Dokumente in einem Hauptfenster gewohnt) wie kann man das dann adäquat lösen?

Ciao
Stefan

Uwe Raabe 1. Feb 2019 15:28

AW: Komische Fehler beim Debugging
 
Zitat:

Zitat von skoschke (Beitrag 1424560)
Wenn MDI nicht mehr geht (aber unsere Kunden sind mehrere Dokumente in einem Hauptfenster gewohnt) wie kann man das dann adäquat lösen?

Da ein Fehler akzeptieren auf Dauer nicht durchführbar sein wird, hilft wohl nur Kunden umgewöhnen. Dabei ist sicher ein gewisses Trägheitsmoment zu überwinden, aber das ist bei Neuerungen kaum vermeidbar.

Alternativ könnte man noch über den Einsatz eines Docking-Frameworks nachdenken. Allerdings kommen die wenigsten davon (so viele gibt es gar nicht) auch mit separaten Forms klar, sondern arbeiten stabiler mit Frames. Statt ein MDI-Form mit vielen MDI-Clients hat man dann ein MainForm mit vielen Frames. Das bedeutet aber nicht selten einen signifikanten Aufwand.

Am Ende kommt für den Kunden in jedem Fall eine Umgewöhnung dabei heraus. Man muss ihm halt nur etwas bieten mit dem er gut klar kommt, selbst wenn es dafür eine gewisse Anlern-Phase braucht.

TiGü 1. Feb 2019 15:34

AW: Komische Fehler beim Debugging
 
Wo genau ist das Problem? Funktioniert irgendwas nicht?
Das sind auch nur vergessene OutputDebugString-Ausgaben des Microsoft-Praktikanten, der an der dwmapi.dll programmiert hat.
Alles gut, du machst nichts falsch.

Delbor 1. Feb 2019 16:09

AW: Komische Fehler beim Debugging
 
Hi skoschke
Zitat:

Zitat von skoschke (Beitrag 1424560)
Wenn MDI nicht mehr geht (aber unsere Kunden sind mehrere Dokumente in einem Hauptfenster gewohnt) wie kann man das dann adäquat lösen?

Ich hab mir mal einen kleinen Test gebastelt mit mehreren Frames, und einer von Ihnen soll mehrere frei platzierbare Forms enthalten. MDI wäre da gerade deswegen nicht in Frage gekommen.

Auch wenn die Testanwendung su gut wie keinen Code enthält - bis auf ein Menue, über das sich zur Laufzeit ein (oder mehrere) Fenster in dem dafür vorgesehenen Frame erstellen lässt - funktioniert die Anwendung soweit.

In MDI-Anwendungen ist/war es möglich, das Menü des aktiven Childs im Menü des Hauptformulars anzuzeigen. Das ist für normale Formulare nicht vorgesehen, per Änderung des Parent aber dennoch möglich. Was soviel heisst: mit etwas Handarbeit sollte sich sowas hinkriegen lassen.

Gruss
Delbor

Delbor 1. Feb 2019 16:26

AW: Komische Fehler beim Debugging
 
Hi zusammen
Zitat:

Zitat von TiGü (Beitrag 1424562)
Wo genau ist das Problem? Funktioniert irgendwas nicht?
Das sind auch nur vergessene OutputDebugString-Ausgaben des Microsoft-Praktikanten, der an der dwmapi.dll programmiert hat.
Alles gut, du machst nichts falsch.

Ich hab das soeben mal ausprobiert: Datei=>Neu=>Weitere=>MDI-Anwendung. Die wird gleich mit den wichtigsten Buttons/Icons erstellt, und das MDI-Child enthält ein Memo. Text-Dateien könnte man also öffnen.
Ich habe allerdings nur gerade das Öffnen eines leeren Childs getestet, wäre aber erstaunt, wenn dies mit einer Textdatei nicht möglich wäre.

Gruss
Delbor

Delbor 1. Feb 2019 16:31

AW: Komische Fehler beim Debugging
 
Hi zusammen
Zitat:

Zitat von Uwe Raabe (Beitrag 1424561)
Am Ende kommt für den Kunden in jedem Fall eine Umgewöhnung dabei heraus. Man muss ihm halt nur etwas bieten mit dem er gut klar kommt, selbst wenn es dafür eine gewisse Anlern-Phase braucht.

Word war anfänglich ein MDI-Programm - die Umstellung auf NichtMDI hab ich gar nicht mitgekriegt.

Gruss
Delbor

Lemmy 1. Feb 2019 19:58

AW: Komische Fehler beim Debugging
 
Zitat:

Zitat von Delbor (Beitrag 1424563)
In MDI-Anwendungen ist/war es möglich, das Menü des aktiven Childs im Menü des Hauptformulars anzuzeigen. Das ist für normale Formulare nicht vorgesehen,

hm.. das sieht die Delphi-Hilfe aber anders...

http://docwiki.embarcadero.com/Libra...Menu.AutoMerge


Alle Zeitangaben in WEZ +1. Es ist jetzt 11:13 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