![]() |
Programmstart/bpl auf Delphifreien Rechner
Hallo,
Delphi versucht mich wieder mal zu ärgern. Ich habe ein Programm ohne Laufzeitbibliotheken compiliert. Der Schalter Laufzeitbibliothek unter Packages ist aus. Das Eingabefeld für die BPL ist geleert. Starte ich das Programm auf einen Delphi-freien Rechner, also keine BPL vorhanden, dann startet das Programm mit einer Fehlermeldung. "Programm kann nicht gestartet werden, da rtl140.bpl fehlt." Nach dem Wegklicken dieser Fehlermeldung läuft das Programm normal weiter und funktioniert wie gewohnt. Das Programm ist früher mal mit Laufzeit-BPL compiliert worden. Ich vermute das irgendwas im Projekt nicht korrekt zurückgesetzt wurde. Hat wer eine Idee was da schief läuft? Gruß Peter |
AW: Programmstart/bpl auf Delphifreien Rechner
Lösche mal alle DCU-Dateien und sonstige kompilierte Dateien, dann starte Delphi und den Rechner neu (also den mit Delphi). Dann sollte das Problem weg sein.
Bernhard |
AW: Programmstart/bpl auf Delphifreien Rechner
Schön wärs,
das habe ich natürlich als erstes probiert. Alle DCU löschen zusätzlich bereinigen und Projekt neu erzeugen. Jetzt habe ich auch noch einige Bibliotheken gelöscht und neu installiert. Das Problem bleibt. Ich habe jetzt mal eine leere BPL auf rtl140.bpl umbenannt. Dann meckert das Programm ein fehlendes @system@initializion$$qqrv an und funktioniert danach anstandslos. Ich habe jetzt als Workaround die rtl140.bpl ins Programmverzeichnis kopiert. Eine Lösung ist das aber nicht. Peter |
AW: Programmstart/bpl auf Delphifreien Rechner
Man kann ALLES, außer DPR, PAS und DFM löschen.
In Einigen (wie z.B. RES könnte noch nütliches Zeug drinstehn, wie das Projekticon und die Versions-Resource, aber dieses wird alles mit Standardwerten neu erzeugt). Vorallem die DPROJ, LOCAL und Co. solltest du mal Löschen. PS: Ein Backup vorm Löschen oder einfach nur Umbenennen, statt Löschen, macht sich gut. |
AW: Programmstart/bpl auf Delphifreien Rechner
So jetzt habe ich nur noch dfm, pas und dpr gelöscht.
Alles was an Quellen nicht mehr gefunden wurde (Standardverzeichnis) direkt eingebunden. Der Effekt ist der gleiche. Mir wird wohl nichts weiter übrigbleiben als Delphi neu zu installieren. Peter |
AW: Programmstart/bpl auf Delphifreien Rechner
hast du noch irgendwelche anderen Quellen, die eingebunden wurden?
Bernhard |
AW: Programmstart/bpl auf Delphifreien Rechner
Ich habe jetzt eine Sicherungskopie eingespielt, war einfacher als Delphi neu zu installieren, jetzt geht es wieder.
Bei der Fehlersuche habe ich noch einen Seiteneffekt festgestellt, den ich für einen ziemlichen Designfehler in Delphi halte und der auch eine Ursache sein könnte. Ich habe mal eine Komponente ausprobiert, hier die ADS Komponenten. Das führt dazu, das Delphi automatisch die notwendigen Unit einbindet. Lösche ich diese Komponente, so werden die automatisch eingebudenen Unit nicht wieder entfernt. Mit Delphi-Mitteln ist es auch nicht möglich, nicht verwendete Unit zu erkennen bzw. zu beseitigen. D.h. in einer der 370 Forms des Projektes war ADS eingebunden. Dieses hat einen Initialize Teil. Das führt dazu das einmal unnötiger Code im Programm generiert wird und zum anderen beim Programmstart wird dieser Teil abgearbeitet. Obwohl nicht benötigt, wollte dieser Initialisierungsteil dll und Lizensen nachladen, was auf anderen Maschinen natürlich nicht vorhanden ist. Beruflich arbeite ich viel mit VS2010. Da ist zwar auch nicht alles Gold was glänzt, aber bei großen Projekten ist man inzwischen produktiver. Allein der BPL Krampf gegen Assemblys ist ein Drama. Hoffentlich tut sich hier was mit dem neuen Compiler. Gruß Peter |
Alle Zeitangaben in WEZ +1. Es ist jetzt 23: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