![]() |
Indy 9 Problem mit FTP
Hallo allerseits,
ich habe ein Problem mit den Indy's (Version 9) mit FTP. Das Programm läuft zwar fehlerfrei ab, es werden auch sämtliche Daten zum Server ohne Fehler übertragen. Wenn ich das Programm jedoch innerhalb der Delphi-Entwicklungsumgebung starte, wird zwar ebenfalls alles ordnungsgemäss abgearbeitet. Beim Beenden des Programmes erscheint dann jedoch ein CPU-Fenster mit dem Titel: Zitat:
Kennt jemand vielleicht die Ursache bzw. weiss jemand, wie man den Grund des Fehlers beseitigen könnte? mfg Herbert |
Re: Indy 9 Problem mit FTP
Soweit ich weiß sind bei "Indy 9.0" Demos dabei. Wenn ich mich nicht täusche auch für FTP. Funktioniert das Demo denn ohne Probleme oder gibt es da auch schon Probleme (Abstürze, Hänger usw.)?
Falls ja: dann wird es wohl an der "Indy 9.0"-Version liegen. Bei "Indy" mache ich eigentlich regelmäßig Updates bzw. ich installiere regelmäßig die neueste Version (deinstalliere vorher natürlich die alte Version!!). |
Re: Indy 9 Problem mit FTP
Liste der Anhänge anzeigen (Anzahl: 1)
Ich habe hier im Anhang mal das CPU-Fenster mit der Fehlermeldung angehängt. Vielleicht kann ein erfahrener Benutzer mir sagen, von welchem Teil von Indy dieser Fehler ausgelöst wird.
mfg Herbert |
Re: Indy 9 Problem mit FTP
Moin! :-)
Die Idee mit dem Screenshot ist ja wirklich super gemeint, aber das CPU-Fenster sagt nichts darüber aus, wo der Fehler passiert ist! Man kann sicherlich sagen, das ein bestimmter Wert der in ein Register geschrieben wurde den Fehler ausgelöst hat, aber man kann unmöglich sagen, durch welche Quelltextzeile und welchen Befehl dieser Wert in das entsprechende Register geschrieben wurde. Sinnvoller wäre es da schon, wenn man den Source-Code (falls möglich) vor sich hätte und könnte den Fehler reproduzieren. Man(n) (Frau übrings auch! ;-) ) könnte sich dann per integriertem Debugger an die entsprechende Stelle "herantasten". |
Re: Indy 9 Problem mit FTP
Leider ist der Quelltext zu lange, um ihn hier zu posten. Ich vermute, dass die verwendete Routine IdFTP.DirectoryListing ev. mit der Fehlermeldung zu tun hat. Bin mir nicht sicher, ob diese Routine überhaupt noch unterstützt wird. In Indy 10 gibt es diese nicht mehr, deshalb habe ich mich für Indy 9 entschieden. Oder gibt es in Indy 10 eine Alternative zu DirectoryListing - ich möchte nämlich die einzelnen Attribute einer Datei auswerten (Name, Ext, Länge, Type, Attribute). Habe hierzu in Indy 10 leider keine Möglichkeit mehr gesehen.
Nachdem die compilierte Application sowieso fehlerfrei abläuft, ist es mehr oder weniger nur ein Schönheitsfehler und wird mich halt nicht weiter stören. mfg Herbert |
Re: Indy 9 Problem mit FTP
Hi,
Du könntest noch probieren, Dir den "Aufruf-Stack" (unter "Debug-Fenster") anzuschauen. Dort findest Du evtl. heraus, welche Routine zum Fehler geführt hat. mfG mirage228 |
Re: Indy 9 Problem mit FTP
|
Re: Indy 9 Problem mit FTP
Ich konnte ev. den Fehler jetzt weiter eingrenzen. Mit dem Debugger komme ich mittels F7 bis zur Indy-Routine:
IdWinSock2 Am Ende dieser Routine steht:
Delphi-Quellcode:
Ws2Unload wird noch fehlerfrei ausgeführt, danach steht der Cursor auf end. Wenn ich hier jetzt nochmals F7 drücke, kommt das CPU-Fenster.
finalization
WS2Unload end. Vielleicht liest hier jemand von der Indy-Seite mit und könnte mir ev. weiterhelfen. Wie gesagt, betrifft nur den Ablauf der Application innerhalb von Delphi. Die compilierte Version läuft dagegen fehlerfrei. mfg Herbert |
Re: Indy 9 Problem mit FTP
Hallo Herbert,
was macht dich so sicher, dass es sich um einen Fehler in den Indy-Komponenten handelt? Dass du beim single step auf die finalization section deiner wahrscheinlich letzten Unit in der exit chain stösst ist kein Indiz auf einen Fehler dort. Ich vermute dass dein Code den Fehler verursacht und dass er je nach Ablaufumgebung in Erscheinung tritt oder nicht. Das muss nicht mal Code sein, der eine Indy-Komponente verwendet. Isoliere den fraglichen Code einfach und teste das Fragment in beiden Ablaufumgebungen - dann hast du Sicherheit, dass es an diesem Code liegt. Ob es dann ein Fehler in der Anwendung der Komponenten (dein Fehler) oder in der Komponente selbst (Indy Fehler) ist, kann dann leichter geprüft werden. Freundliche Grüße vom marabu |
Re: Indy 9 Problem mit FTP
Hallo allerseits,
der Fehler ist gefunden ! :-D Ursache war: Der Aufruf der Routine SndPlaySound aus der Unit MMSystem - welche zwar funktionierte, jedoch beim Beenden des Programmes obigen Fehler verursachte. In diesem Zusammenhang: Wie kann ich einen Sound (.wav) innerhalb von Delphi abspielen, ohne die Routine SndPlaySound ? mfg Herbert |
Alle Zeitangaben in WEZ +1. Es ist jetzt 22:34 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz