Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Die Delphi-IDE (https://www.delphipraxis.net/62-die-delphi-ide/)
-   -   Warum ist das Programmformular beim Debuggen blockiert? (https://www.delphipraxis.net/192302-warum-ist-das-programmformular-beim-debuggen-blockiert.html)

Delphi-Laie 6. Apr 2017 18:57

Warum ist das Programmformular beim Debuggen blockiert?
 
Hallo Delphifreunde!

Mal eine eine etwas ungewöhnliche Frage: Warum ist in Delphi das Formalar (sind die Formulare) des Programmmes während des Debuggens unbenutzbar - blockiert?

Es läßt sich nicht verschieben, oder anderweitig bedienen, und beim "Darüberwischen" wird und bleibt es weiß. Es interagiert also in keiner Weise.

Nun arbeite ich derzeit mit Visual Basic wahrscheinlich Version 6.0, jedenfalls von 1997 und 1998, also auch noch eine "Altlast aus dem letzten Jahrtausend". Zu meinem großen Erstaunen stellte ich fest, daß wesentliche Formularfunktionen des debuggten Programmes erhalten bleiben: Es kann verschoben, gezoomt, minimiert/maximiert und wiederhergestellt werden, auch beim Darüberwischen wird es es neugezeichnet. Nur die Arbeitsfläche des Formulares inkl. der darauf befindlichen Bedienelemente ("Controls") sind unbenutzbar bzw. gesperrt, es kommt beim Klick ein "beep".

Also ist das, wie Delphi das löst, keinesfalls ein Naturgesetz.

Weiß jemand, warum es diese deutlichen Unterschiede gibt?

Danke und Gruß

Delphi-Laie

himitsu 6. Apr 2017 19:41

AW: Warum ist das Programmformular beim Debuggen blockiert?
 
Weil dein Programm da angehalten ist und demnach auf NICHTS reagieren kann?

Bei VB wird wohl nur die innere Instanz gedebuggt und das Anzeigefenster gehört nicht dazu.
Quasi zwei Prozesse?

Du baust dir eien Client-Server-Anwendung und wenn du den Server Debuggst, dann funktioniert dennoch der Client (so lange er nicht im Hauptthread auf etwas vom Server wartet)

bra 7. Apr 2017 08:56

AW: Warum ist das Programmformular beim Debuggen blockiert?
 
Wenn das Programm nicht "eingefroren" wäre, würden ja ständig irgendwelche Events kommen und sich im schlimmsten Fall die gerade debuggten Variablen verändern. Das wäre ja unbrauchbar.

Delphi-Laie 7. Apr 2017 12:42

AW: Warum ist das Programmformular beim Debuggen blockiert?
 
Natürlich muß das Formular für Nutzereingaben blockiert sein.

Meine Frage ging in die Richtung, ob jemand weiß, warum es Unterschiede zwischen dem Vorgehen bzw. der "Formular-Teilbedienbarkeit" bei Delphi und dem Visual Studio (jedenfalls hier Visual Basic) gibt: Hat Borland alles richtig gemacht, oder hatte Microsoft irgendwelche Geheimrezepte den Borländern voraus?

frapo 7. Apr 2017 18:36

AW: Warum ist das Programmformular beim Debuggen blockiert?
 
Zitat:

Zitat von Delphi-Laie (Beitrag 1366775)
Meine Frage ging in die Richtung, ob jemand weiß, warum es Unterschiede zwischen dem Vorgehen bzw. der "Formular-Teilbedienbarkeit" bei Delphi und dem Visual Studio (jedenfalls hier Visual Basic) gibt: Hat Borland alles richtig gemacht, oder hatte Microsoft irgendwelche Geheimrezepte den Borländern voraus?

Natürlich sollte man sich erstmal vergewissern, ob man mit VB4, VB5 oder VB6 arbeitet. Da gibt es nämlich enorme Unterschiede.
Wirklich Kompilate wurden ja nie erzeugt. Selbst VB6 erstellte "nur" sogenannte portable executables(diese waren nicht bezogen auf Plattformunabhängigkeit! Auch seinerzeit ein Fremdwort für MS), sondern um auf irgendeinem anderen WIN-Rechner eine Anwendung zum laufen zu bringen, brauchte man die VBRuntime. Das zeigt doch eigentlich, dass VB Classic komplett anders funktioniert, als Delphi.

Des weiteren macht es doch einen Unterschied, ab wann der Debugger läuft. Das weiß momentan keiner hier, außer dir.

Ohne genauere Informationen, ist das alles im Trüben fischen.


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