AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

rtl90.bpl wird nach Neustart vermisst

Ein Thema von Medium · begonnen am 24. Okt 2022 · letzter Beitrag vom 25. Okt 2022
Antwort Antwort
Seite 2 von 3     12 3      
Medium

Registriert seit: 23. Jan 2008
3.686 Beiträge
 
Delphi 2007 Enterprise
 
#11

AW: rtl90.bpl wird nach Neustart vermisst

  Alt 25. Okt 2022, 13:08
Neue Erkenntnis:

Das Problem taucht dann auf, wenn ich eine Komponente aus dem Package neu auf das Formular packe. Ich erinnere mich daran, dass ich beim Machen der letzten Änderungen aus Versehen Strg-X mit einer dieser im Fokus gedrückt habe, und dann einfach mit Strg-V wieder eingefügt. (Aus meiner Sicht also "nichts geändert".)
Wenn die Komponente bereits vorhanden ist, gibt es keine Probleme. Spannend ist auch: Copy&Paste solch einer Komponente geht. Aber neu aus der Palette aufs Form ziehen nicht! Da kommt dann genau derselbe Fehler wie beim Öffnen. Welcher allerdings auch beim Öffnen kommt, wenn die Komponente vorher funktionierend kopiert wurde.

Was auch wunderbar geht: Komponente zur Laufzeit erzeugen! Einfach im OnCreate der Form als Felder der Form-Klasse, Ereignisse zuweisen, go. Ohne Probleme.

Muss ich wohl doch mal den PE zu Rate ziehen. Noch nie erlebt sowas.
"When one person suffers from a delusion, it is called insanity. When a million people suffer from a delusion, it is called religion." (Richard Dawkins)
  Mit Zitat antworten Zitat
Rolf Frei

Registriert seit: 19. Jun 2006
647 Beiträge
 
Delphi 11 Alexandria
 
#12

AW: rtl90.bpl wird nach Neustart vermisst

  Alt 25. Okt 2022, 13:33
Der Umzug war eigentlich von D7 auf D2007. D2005 kommt nur ins Spiel, weil das Package für die Komponente eigentlich für D2005 ist. Da ich aber die vollen Sourcen habe, hab ich darin kurzerhand die nötigen IFDEFs angepasst, und konnte sie komplett neu für D2007 kompilieren. Das hatte ich ja schon vor etlichen Jahren gemacht und seit dem auch desöfteren ohne Probleme damit gearbeitet.

Was mich halt gerade extrem wundert, ist dass dasselbe Projekt in einer Version von vor ein paar Tagen klaglos läuft. Also muss es ja etwas am Projekt selber sein - aber die Änderungen, die ich zuletzt gemacht habe, betrafen lediglich das Logging in einem Memo, haben also nichts was mit OPC zu tun hat angefasst. Auch Projektoptionen habe ich nicht geändert.

Bevor ich weiter auf Geisterjagd gehe, versuche ich einfach mal die Änderungen nochmals auf Basis der Vor-Version zu machen. Mal schauen, wie die sich dann verhält.
Das solltest du nicht so machen! Damit ist das Package noch nicht für D2007 fertig. Die ganzen Requires müssen da genauso an die Packages von D2007 angepasst werden udn auch der Packagename sollte auf irgendwas mit D2007 im Namen angepasst werden. Dann kann es sein, dass dein Projekt das problemlos läuft ohne Packages kompiliert wurde und dein neues mit. Schalte die die Nutzung der Packages in deinem neuen Projekt einfach aus oder kontrolliere da die verwendeten Packages. Du ahst da vermutlch ncoh den selben Dateinamen für das D2007 Package wie für das D2005 Package und das ist ein absolutes NOGO! Vermutlch versucht dein Programm die flache D2005 Pacakge zu laden, welches wiederumm die besagte rtl90 laden will, dies es aber garnicht gibt. in deinem neuen Package müsste rtl110 im required des Package eingetragen sein.
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu
Online

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.073 Beiträge
 
Delphi 12 Athens
 
#13

AW: rtl90.bpl wird nach Neustart vermisst

  Alt 25. Okt 2022, 13:59
Man kann z.B. im Require die Packages mit oder ohne Version angeben, wenn sie mit LIBSuffix erstellt wurden, also die "Version" nicht im Dateinamen steht.
also RTL oder eben RTL123 ... bei Letzterem hast die Version fest verknuppelt und mußt das natürlich beim Upgrade (neues Delphi) auch mit anpassen.


In neueren Delphis ab 10.4 kann man beim Erstellen von eigenen Packages auch $(auto) als LIBSuffix angeben.
Zusammen mit dem "ohne Nummer" im Require lassen sich somit (bedingt) Projekte nun auch für mehrere Delphi-Vesionen benutzen, bzw. einfach upgraden ... ansonsten braucht man pro Delphi-Version eine DPK/DPROJ, bzw. muß beim Upgrade immer wieder die Nummern ändern.
Neuste Erkenntnis:
Seit Pos einen dritten Parameter hat,
wird PoSex im Delphi viel seltener praktiziert.

Geändert von himitsu (25. Okt 2022 um 14:07 Uhr)
  Mit Zitat antworten Zitat
Delphi.Narium

Registriert seit: 27. Nov 2017
2.490 Beiträge
 
Delphi 7 Professional
 
#14

AW: rtl90.bpl wird nach Neustart vermisst

  Alt 25. Okt 2022, 14:07
Neue Erkenntnis:

Das Problem taucht dann auf, wenn ich eine Komponente aus dem Package neu auf das Formular packe. Ich erinnere mich daran, dass ich beim Machen der letzten Änderungen aus Versehen Strg-X mit einer dieser im Fokus gedrückt habe, und dann einfach mit Strg-V wieder eingefügt. (Aus meiner Sicht also "nichts geändert".)
Wenn die Komponente bereits vorhanden ist, gibt es keine Probleme. Spannend ist auch: Copy&Paste solch einer Komponente geht. Aber neu aus der Palette aufs Form ziehen nicht! Da kommt dann genau derselbe Fehler wie beim Öffnen. Welcher allerdings auch beim Öffnen kommt, wenn die Komponente vorher funktionierend kopiert wurde.

Was auch wunderbar geht: Komponente zur Laufzeit erzeugen! Einfach im OnCreate der Form als Felder der Form-Klasse, Ereignisse zuweisen, go. Ohne Probleme.

Muss ich wohl doch mal den PE zu Rate ziehen. Noch nie erlebt sowas.
Dann gibt es (höchstwahrscheinlich) Unterschiede in der zum Projekt gehörenden Konfiguration der Packages.

Unter D7: Menü "Komponenten" Untermenü "Packages installieren"

Analog dazu in deinen Delphis mal schauen, ob dort Unterschiede zu finden sind.

Die IDE scheint nicht in der Lage zu sein etwas aus der Palette in ein Formular einzufügen, zu dem zwar der Paletteneintrag vorhanden ist, aber das Package in der Entwicklungsumgebung fehlt.

Bei Copy&Paste wird einfach der Quelltext des Kopierten neu eingefügt. Da muss das entsprechende Package nicht vorhanden sein, da ja schon alle nötigen Infos per Copy&Paste geliefert werden.

Es fehlt Dir da in der IDE vermutlich das Design-Time-Package.

Das die Fehlermeldung nicht zwingend so ganz korrekt ist, hat himitsu ja weiter oben schon beschrieben. Es fehlt also nicht zwingend rtl90.bpl sondern eventuell "irgendetwas", das von rtl90.bpl benötigt wird oder "irgendetwas" aus einer ganzen Reihe von Abhängigkeiten, in der rtl90.bpl u. a. auch eine Rolle spielen könnte.
  Mit Zitat antworten Zitat
Benutzerbild von Uwe Raabe
Uwe Raabe

Registriert seit: 20. Jan 2006
Ort: Lübbecke
11.453 Beiträge
 
Delphi 12 Athens
 
#15

AW: rtl90.bpl wird nach Neustart vermisst

  Alt 25. Okt 2022, 14:17
Man kann z.B. im Require die Packages mit oder ohne Version angeben, wenn sie mit LIBSuffix erstellt wurden, also die "Version" nicht im Dateinamen steht.
also RTL oder eben RTL123 ... bei Letzterem hast die Version fest verknuppelt und mußt das natürlich beim Upgrade (neues Delphi) auch mit anpassen.
Ich möchte nur mal anmerken, dass diese Technik mindestens seit Delphi 7 existiert und von Borland empfohlen wird. Es ist erstaunlich, ja eigentlich beschämend, dass das selbst heute noch von vielen Komponentenherstellern ignoriert wird.
Uwe Raabe
Certified Delphi Master Developer
Embarcadero MVP
Blog: The Art of Delphi Programming
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu
Online

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.073 Beiträge
 
Delphi 12 Athens
 
#16

AW: rtl90.bpl wird nach Neustart vermisst

  Alt 25. Okt 2022, 14:51
Mal als FeatureRequest, für's nächste Jahrtausend, dass der Compiler eine Warnung wirft.


Nja, das neue, paar Jahre alte $AUTO hat auch noch paar Probleme ... z.B. in den Makrovariablen fehlt im $(Outputfilename) die Version.
Neuste Erkenntnis:
Seit Pos einen dritten Parameter hat,
wird PoSex im Delphi viel seltener praktiziert.

Geändert von himitsu (25. Okt 2022 um 14:53 Uhr)
  Mit Zitat antworten Zitat
Medium

Registriert seit: 23. Jan 2008
3.686 Beiträge
 
Delphi 2007 Enterprise
 
#17

AW: rtl90.bpl wird nach Neustart vermisst

  Alt 25. Okt 2022, 15:43
Man kann z.B. im Require die Packages mit oder ohne Version angeben, wenn sie mit LIBSuffix erstellt wurden, also die "Version" nicht im Dateinamen steht.
also RTL oder eben RTL123 ... bei Letzterem hast die Version fest verknuppelt und mußt das natürlich beim Upgrade (neues Delphi) auch mit anpassen.
Ich möchte nur mal anmerken, dass diese Technik mindestens seit Delphi 7 existiert und von Borland empfohlen wird. Es ist erstaunlich, ja eigentlich beschämend, dass das selbst heute noch von vielen Komponentenherstellern ignoriert wird.
Ist in diesem Fall nicht beschämend, weil dort die versionsfreien requires Angaben gemacht wurden. Die hatte ich mir bereits angeschaut. Dort steht einfach nur "rtl.bpl" drin.
"When one person suffers from a delusion, it is called insanity. When a million people suffer from a delusion, it is called religion." (Richard Dawkins)
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu
Online

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.073 Beiträge
 
Delphi 12 Athens
 
#18

AW: rtl90.bpl wird nach Neustart vermisst

  Alt 25. Okt 2022, 15:46
es wurde auch schon genannt

* ProzessExplorer
* da siehst du dann wann und von wo diese rtl90 versucht wird zu laden
* und man sieht auch, welche BPL/DLLs vorher geladen wurden ... meistens sind es Jene, welche dann auch diese DLL/BPL laden,
* * bzw. man siehst sich den ProzessStack an, aus welchem Modul das Laden wirklich kam
Neuste Erkenntnis:
Seit Pos einen dritten Parameter hat,
wird PoSex im Delphi viel seltener praktiziert.
  Mit Zitat antworten Zitat
Medium

Registriert seit: 23. Jan 2008
3.686 Beiträge
 
Delphi 2007 Enterprise
 
#19

AW: rtl90.bpl wird nach Neustart vermisst

  Alt 25. Okt 2022, 15:50
Die IDE scheint nicht in der Lage zu sein etwas aus der Palette in ein Formular einzufügen, zu dem zwar der Paletteneintrag vorhanden ist, aber das Package in der Entwicklungsumgebung fehlt.

Bei Copy&Paste wird einfach der Quelltext des Kopierten neu eingefügt. Da muss das entsprechende Package nicht vorhanden sein, da ja schon alle nötigen Infos per Copy&Paste geliefert werden.

Es fehlt Dir da in der IDE vermutlich das Design-Time-Package.
Das klingt interessant. Da muss ich mal gucken, ob es noch ein separates Designtime-Package gibt. Allerdings erinnere ich mich daran, 2 Packages installiert zu haben: "Kassl common dOPC" (vermutlich Runtime Package), und "Kassl dOPC DA" (vermutlich Designtime, weil daraufhin bestätigt wurde, dass die Komponente "TdOPCServer" der Palette hinzugefügt wurde. (Um welche es hier letztlich geht.)

Die beiden Packages werden auch als installiert und aktiviert in der Übersicht angezeigt - bis zu dem Zeitpunkt, an dem ich die Komponente platziere. Ab dann sind sie daraus verschwunden. Starte ich Delphi ohne Projekt neu, sind sie wieder drin.
"When one person suffers from a delusion, it is called insanity. When a million people suffer from a delusion, it is called religion." (Richard Dawkins)
  Mit Zitat antworten Zitat
Medium

Registriert seit: 23. Jan 2008
3.686 Beiträge
 
Delphi 2007 Enterprise
 
#20

AW: rtl90.bpl wird nach Neustart vermisst

  Alt 25. Okt 2022, 15:52
es wurde auch schon genannt

* ProzessExplorer
* da siehst du dann wann und von wo diese rtl90 versucht wird zu laden
* und man sieht auch, welche BPL/DLLs vorher geladen wurden ... meistens sind es Jene, welche dann auch diese DLL/BPL laden,
* * bzw. man siehst sich den ProzessStack an, aus welchem Modul das Laden wirklich kam
Was mich hiervon bisher abgehalten hat ist, dass sich die Datei rtl90.bpl niemals auf dem PC befunden hat. Ich habe sowohl das frisch kopierte Backup, als auch die neugestartete Version komplett nach "rtl90*.*" durchsuchen lassen - nirgends.
Was auch Sinn macht, da ich D2005 nie besessen habe.
"When one person suffers from a delusion, it is called insanity. When a million people suffer from a delusion, it is called religion." (Richard Dawkins)
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 2 von 3     12 3      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 16:52 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