Delphi hängt
-
Hallo... ich habe ein Delphi5 Programm welches seit 9 Jahren auf allen Windows PC's läuft. Das Delphi Programm nutzt eine DLL welche in VC++ 6.0 erstellt wurde. Bisher alles ohne Probleme.
Jetzt aber soll es auf einer AMD 64 Bit CPU laufen. Sobald ich die DLL mit LoadLibrary lade hängt das Programm. Ist sofort eingefroren und sagt nichts mehr.
Ich habe den Sourcecode der DLL. Ich kann diese also debuggen bzw. meldungen ausgeben. ABER...wo muss ich ansetzen ?
Grüße Jörg
-
Ohne Ahnung von Delphi zu haben.. in der DLL-Main
Wenn das Programm es bis dahin nicht schafft, liegt das Problem wohl woanders.
-
chjr2011701 schrieb:
Jetzt aber soll es auf einer AMD 64 Bit CPU laufen. Sobald ich die DLL mit LoadLibrary lade hängt das Programm. Ist sofort eingefroren und sagt nichts mehr.
DLL laden, dann das Programm im Debugger anhalten und im Call-Stack nachschauen, wo's hängt. Möglicherweise mußt du das mit beiden Debuggern (Delphi und Visual C++) separat ausprobieren, da die Debug-Informationen leider nicht kompatibel sind.
-
Leider tritt das Problem nur auf einem PC auf welchen ich nicht Debuggen kann.
Ich habe jetzt im DLL Entry Point eine Message Box platziert. Diese kommt schon nicht mehr. D.h. das Prog führt die Messagebox schon nicht mehr aus.
Was kann ich jetzt noch machen ?
-
CHJR201170_1 schrieb:
Leider tritt das Problem nur auf einem PC auf welchen ich nicht Debuggen kann.
Dafür gibt's Remote-Debugger.
-
Ich bin mit dem PC nicht in einem Netzwerk.... wie soll ich den Mit einem Remote debugger debuugen.
Habt ihrt eine Konkrete Idee
-
Vielleicht kannst du was mit Teamviewer oder Remotedesktop machen? So haben wir es früher bei Kunden gemacht wenn wir rein per Telefon nicht mehr weiter kamen.
Gruß Chris
-
CHJR201170_2 schrieb:
Ich bin mit dem PC nicht in einem Netzwerk.... wie soll ich den Mit einem Remote debugger debuugen.
Indem du ihn ans Netzwerk anschließt. Warum ist das ein Problem?
Wenn es partout nicht geht, mußt du wohl aufs Logging zurückgreifen. Dafür gibt es Tools wie CodeSite und SmartInspect.