![]() |
Datenbank: Firebird • Version: 2.5 • Zugriff über: TIBSQL
Invalid cursor declaration
Moin.
das Problem hatten wir in Delphi 6 behoben in dem wir uns selber um den Cursor gekümmert haben. D.h die .dcu von TIBSQL gelöscht, die .pas in unseren Suchpfad gepackt und den Teil selber abgeändert. Nun sind wir auf Delphi XE4 bzw. Berlin umgestiegen. Nun haben wir den Fehler wieder in unseren Programmen. Aktuell benutzen wir das TIBSQL von Delphi. Ich habe gesehen das sie was an dem Teil geändert haben, aber scheinbar kann der Cursor dennoch 2x vergeben werden. Nun wollte ich das gleiche in XE4 machen was ich auch schon in Delphi 6 gemacht habe, doch das lässt Delphi scheinbar nicht mehr zu. Wenn ich die .dcu lösche und die .pas selber übersetze, erhalte ich eine Fehlermeldung bei der nächsten Unit das diese mit einer anderen Version der TIBSQL.dcu übersetzt wurde. 2 Fragen dazu. 1.) Wie kann ich dies evtl umgehen? 2.) Bekomme ich den Cursor Fehler evtl anderes behoben? Ich habe in der Delphi 6 Version den Cursor um den getTickCount erweitert. Damit war gewährleistet das ich nie den selber Cursorname erhalte. Gruß Sven |
AW: Invalid cursor declaration
Einen Fehler dieser Art
Zitat:
Da Du die Meldung ja (vermutlich) zu einer konkreten Unit bekommst, kannst Du natürlich auch gezielt deren DCU löschen und dann neu probieren. Ggfls. musst Du aber weiterhin mit dem Auftreten dieses Fehlers rechnen und dann jeweils die DCU zur nächsten bemängelten Unit löschen. Das kann schonmal ein paar Runden so weitergehen, lässt sich aber eigentlich immer beheben, es sei denn, man hat irgendwann 'ne Unit dabei, zu der man nur die DCU, aber keine Quelltexte, hat. |
AW: Invalid cursor declaration
das wären quasi alle IB Komponenten.
Werde ich wohl demnächst in den sauren Apfel beißen und dort einmal durchgehen. |
AW: Invalid cursor declaration
Zitat:
Dann vielleicht auch noch ein paar Design-Time- und Runtime-Packages neu kompilieren, wenn die IDE das auch verwendet und dann noch Packages/Komponenten von Drittanbietern und ... |
AW: Invalid cursor declaration
Der von himitsu beschriebene Rattenschwanz ist leider nicht auszuschließen.
|
AW: Invalid cursor declaration
Und es gibt dafür keine Compiler Einstellung das ihm das egal ist?
|
AW: Invalid cursor declaration
Das Problem liegt eher im Suchpfad.
Sind dort nur die DCUs enthalten, aber nicht die Quelltexte, so hat der Compiler (egal mit welchem Schalter) keine Chance. Er kennt halt nur die DCUs. Ab und an hilft es bei dieser Fehlermeldung auch, einmal alles neu erstellen zu lassen. Dann sollte eigentlich jede Quelltextdatei neu kompiliert werden, unabhängig davon, ob sie nun seit dem letzten Kompilieren verändert wurde oder nicht. Eventuell auch einfach mal die Packages, die die entsprechenden Komponenten enthalten, neu kompilieren, dann sollte zumindest das Gröbste neu gemacht worden sein. Habe mir irgendwann angewöhnt, für alle Projekten nur einen Ausgabepfad für die DCUs einzurichten. Dort liegt dann zwar immens viel Zeug drinne und es ist nicht unbedingt übersichtlich, aber man kann das Verzeichnis dann einfach leeren. Beim nächsten Kompilieren werden die jeweils benötigten DCUs erstellt, und der Fehler ist (meist) weg. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 03:58 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