Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Die Delphi-IDE (https://www.delphipraxis.net/62-die-delphi-ide/)
-   -   XE4 Remote Debug (https://www.delphipraxis.net/175934-xe4-remote-debug.html)

CarlAshnikov 30. Jul 2013 12:47

XE4 Remote Debug
 
Hallo,

ich habe mir die XE4 Trail Version geladen um die Remote Debug Funktion zu testen. Also habe ich auf den Testgeräten den PAServer installiert und gestartet und das entsprechende Profil in der IDE eingerichtet. Nach anfänglicher Begeisterung musste ich leider feststellen, dass es sich auf beiden getesteten Remotes (Win XP/32 und Win 7/32) nur einmal starten lässt. Danach kommt der "PAClient exited with Code 1" Fehler beim Deploy soweit ich das richtig interpretiere.

Ich glaube das Problem liegt an der RmtDbg180.exe. Diese bleibt immer noch offen, nachdem ich das Debugging beendet habe. Auch wenn ich das geöffnete Fenster per Hand schließe, ist der entsprechende Prozess noch im Taskmanager zu sehen. So lange dieser noch läuft, kann ich auch den PAServer nicht neustarten. Ich denke der blockiert noch den entsprechenden Port. Ist der Prozess gekillt kann ich eine neue Session starten.

Ich habe auch mal das Scratch Verzeichnis umgebogen, um eventuellen Zugriffsberechtigungsproblemen vorzubeugen. Leider kein Erfolg.

Ist jemand ähnlichen Problemen begegnet? Ist das normal? Habe ich irgendwas vergessen?

Union 30. Jul 2013 13:19

AW: XE4 Remote Debug
 
Also ich habe das bisher nur mit dem Mac als Remote Debug Client getestet. Da lief alles ziemlich gut... ausser wenn der PAServer dann irgendwelche Fehler im Terminalfenster ausgibt. Danach lief es manchmal nicht mehr und ich musste die PAServer Session schließen und neu starten.

1. Hast Du im PAServer-Fenster irgendwelche Fehlermeldungen?
2. Beendest Du den PAServer über den dafür vorgesehenen Befehl (q) oder killst Du einfach den Task?

CarlAshnikov 30. Jul 2013 13:51

AW: XE4 Remote Debug
 
Liste der Anhänge anzeigen (Anzahl: 2)
Ich habe keine Fehlermeldungen im PAServer-Fenster. Möchte den eigentlich gar nicht beenden.

Mein Vorgehen ist so: PAServer ohne jegliche Änderungen starten auch kein Passwort. Dann sieht das Fenster wie in Bild 1 aus.

Wenn man debugt kommt Fenster 2 hinzu. Das bleibt auch so wenn das Projekt beendet wird. Danach ist kein neues Debuggen möglich bis ich von Hand den "rmtdbg180" Prozess abschieße (In dem Fenster kann man nichts eintippen).

Ich starte den Vorgang über F9 in der IDE. Mein Vorstellung war, dass die Bedienung wie beim lokalen Debugger ist. Also F9 zum debuggen, Fehler finden, Prozess beenden, Fehler beheben, wieder F9 zum neustarten. Aber daran scheitere ich schon im Button1-Projekt. :|

RWarnecke 30. Jul 2013 15:57

AW: XE4 Remote Debug
 
Wie beendest Du denn das Programm, wenn der Fehler auftritt ? Mit STRG+F2 oder beendest Du das Programm auf dem Rechner mit dem PAServer ?

CarlAshnikov 30. Jul 2013 18:27

AW: XE4 Remote Debug
 
Es tritt in beiden Fällen auf.

CarlAshnikov 31. Jul 2013 09:16

AW: XE4 Remote Debug
 
Nur zum Verständnis: Ich debugge momentan noch keine Software ich will einfach nur VCL-Projekt mit einem Button und einem Label auf 'ner anderen Maschine starten und zwar zwei mal nacheinander ohne irgendwelche Prozesse zu beenden.

Nachdem ich die Trail auf 'nem anderen Rechner installiert habe und eine Remote Debugging auf Rechner Nr 5 durchgeführt habe, ist der Zustand der Gleiche (Beides ebenfalls Win 7 32 Bit).

Meine Diagnose ist nun so: Der RemoteDebug lauscht noch, weil die TCP Verbindung nach beenden des Programms nicht abgebaut wird. Es hilft auch Delphi zu schließen und wieder zu öffnen damit diese resetet wird. Sieht nicht nach einem gewünschten Zustand aus (Zumindest nicht von mir :?)!

Kann mir nicht vorstellen, dass das nur bei mir so schön reproduzierbar sein soll. Benutzt das sonst keiner?

Uwe Raabe 31. Jul 2013 11:32

AW: XE4 Remote Debug
 
Läuft hier einwandfrei: XE4 Update 1 auf Win7 X64, Remote WinXP 32

MEissing 31. Jul 2013 15:13

AW: XE4 Remote Debug
 
Benutze ich (fast) täglich..... und (mittlerweile) keine Probleme (mehr) damit (XE4, Update 1)

CarlAshnikov 1. Aug 2013 07:19

AW: XE4 Remote Debug
 
Auf solche Antworten habe ich voll Schrecken gewartet :-D

Ich habe das Ganze auf meinem Privatrechner auch getestet und auch dort den gleichen Effekt. Anscheinend bin ich zu dumm dafür.

Was mir noch aufgefall ist:
Beim erfolgreichen Ausführen kommt die Meldung "[Warning Warnung] Local file "Win32\Debug\Project1.rsm" not found. Skipping deployment." Im Bereitstellungsfenster ist die auch ausgegraut. Kann das ein Grund sein oder braucht man diese Datei nicht? Die enthält ja Remote Debugging Symbols. Wie kriege ich die erstellt? Bei allen Debug Optionen sollten Häckchen gesetzt sein. Build-Konfiguration ist auch Debug.

Außerdem ist der rmtdbg180 Prozess immer 2 mal vorhanden.

Nochmal mein Vorgehen vielleicht hilfts ja was:

Ich installiere mir die Trialversion. Keine Änderungen irgendwelcher Einstellungen. Wenn das fertig ist kopiere ich den PAServer Ordner aus dem Embarcadero Verzeichnis auf nen Stick und installiere das auf der Remote Maschine. Auch hier nichts geändert. Ist das fertig gehe ich ins Verzeichnis, starte die paserver.exe und drücke nochmal Enter damit ich ohne Passwort starte. Im Delphi Datei -> Neu -> VCL-Formularanwendung. Projektverwaltung Zielplattformen -> 32-Bit-Windows -> Eigenschaften -> Neu Hinzufügen -> Irgendein Name -> IP des Servers -> Verbindung testen. F9 -> warten bis alles fertig ist -> Programm abbrechen (Strg + F2) -> beliebige Zeit warten -> wieder F9 -> Fehlermeldung.

Union 1. Aug 2013 07:45

AW: XE4 Remote Debug
 
Ist in den Projektoptionen->Delphi-Compiler->Linken->Mit externen Debug-Symbolen angekreuzt?

jaenicke 1. Aug 2013 08:01

AW: XE4 Remote Debug
 
Ich hatte damit in der Vergangenheit (insbesondere XE und früher) ähnliche Probleme, aber aktuell kaum noch. Es kommt allerdings leider vor, dass ich Delphi neu starten muss, damit ich wieder Verbindung bekomme (es kommt beim Versuch zu starten ein Fehler), aber den PAServer nicht.
Und auch das ist zwar leider nicht selten, aber dennoch nicht reproduzierbar wie bei dir.

Welche Version steht denn bei dir unter Hilfe --> Info über...?
Bei uns: Embarcadero® Delphi® XE4 Version 18.0.4905.60485
(sprich Update 1 ist installiert)
Ist das bei dir auch diese Version? (Ich weiß nicht was in der aktuellen Trial steckt, deshalb die Frage.)

CarlAshnikov 1. Aug 2013 08:15

AW: XE4 Remote Debug
 
Danke Union! Wenn ich die externen Debug Symbole anschalte scheint es zu funktionieren.:thumb: Hätte man früher drauf kommen können. Aber ich konnte ja trotzdem Haltepunkte setzen und im Code herumsteppen. Kapiere ich noch nicht so ganz!

Die aktuelle Trial enthält folgendes: Embarcadero® Delphi® XE4 Version 18.0.4905.60485 ist also das Update 1 drin. Ist halt eine ganz normale Architect Version die nur 30 Tage hält.

Zitat:

Es hilft auch Delphi zu schließen und wieder zu öffnen damit diese resetet wird.
Das ging bei mir also auch :lol:

Rollo62 23. Okt 2014 21:36

AW: XE4 Remote Debug
 
Hallo zusammen,

hier vielleicht noch eine späte Erkenntnis:

Das Debug-Link Problem hat mich bei allen Versionen begleitet, ich bin gerade bei der XE7 angekommen.

Bei mir hilft das "Remote Symbole einbinden" und
das "Debug Symbole in separatem TDS auslagern" zwar etwas.

Aber es scheint nicht die eigentliche Ursache des Problems zu sein.

Was ich feststelle ist das der Fehler passiert wenn man eine Programm relativ kurz nach Beenden erneut startet.
Wartet man aber etwas längerm mit dem re-Start dann klappt es.

Es scheint mir ein Windows Problem zu sein, das einen gestoppten Prozess anscheinend nicht sofort killt,
sondern den noch etwas länger im Speicher behält.
Allerdings ist im Taskmanager der Prozess schon lange verschwunden.

Also irgendetwas scheint hier das Beenden zu verzögern, Windows, PAServer und/oder DebugEngine.

Es wäre gut wenn der PAServer das Beenden der App steuern würde, und einen harten Kill
ausführen würde, damit das Problem mal endlich verschwindet.
Oder wenigstens einen "Project Clean" Befehl auch an den PAServer durchzuleiten, damit dieser dann
die Reste löschen kann.

Rollo


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