Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Programmstart/bpl auf Delphifreien Rechner (https://www.delphipraxis.net/159343-programmstart-bpl-auf-delphifreien-rechner.html)

hanspeter 23. Mär 2011 22:21

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

rollstuhlfahrer 23. Mär 2011 22:23

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

hanspeter 23. Mär 2011 23:18

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

himitsu 24. Mär 2011 01:18

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.

hanspeter 24. Mär 2011 08:22

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

rollstuhlfahrer 24. Mär 2011 16:44

AW: Programmstart/bpl auf Delphifreien Rechner
 
hast du noch irgendwelche anderen Quellen, die eingebunden wurden?

Bernhard

hanspeter 24. Mär 2011 21:10

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 03:03 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