![]() |
neue Komponenten werden doppelt installiert -> Fehlermeld
Also Folgende Situation:
Ich habe mir vor einiger Zeit ein paar Komponenten erzeugt und in Delphi installiert (z.B. ein Edit wo nur Zahlen, Komma und Minuszeichen zugelassen sind). Einige dieser Komponenten benutze ich nun in einem Composite Control. Wenn ich jetzt dieses ebenfalls installieren will in einem Package, wird mir gemeldet, dass die verwendeten (also die vorher angesprochenen Komponenten) wieder über dieses neue Package installiert wurde. Folglich kommt beim Neustart von Delphi eine Fehlermeldung. Wie kann ich dieses Installieren der schon installierten Komponenten verhindern? Liegt es an der Einbindung der Komponenten in den Uses-Bereich meines Composite Controls? Weiteres Problem: wenn Delphi neu gestartet wird, enthält das Package keine Komponente mehr. Vielen Dank BAMatze |
Re: neue Komponenten werden doppelt installiert -> Fehler
Wenn dein neues Package Units aus dem alten Package verwendet, musst du das alte Package in der Requires Clause des neuen Package angeben.
|
Re: neue Komponenten werden doppelt installiert -> Fehler
Hallo BaMatze,
ich nehme mal an, dass du deine Komponenten in den Units über RegisterComponents registrierst. Somit werden diese Units in deinem neuen Package beim Installieren mit abgearbeitet und die Registrierung (Installation) der Komponenten auch für dein neues Package vorgenommen. Du solltest auf keinen Fall die Units in der Rubrik "Contains" aufnehmen, sondern so wie Uwe geschrieben hat unter "Requires" aufnehmen. Alles andere gibt Ärger. Zusätzlich kannst du auch das Registrieren der Komponenten in eine eigen Unit auslagern. Z.B. RegisterPkgComponents. Da registrierst du dann ausschließlich deine Komponenten für das aktuelle Package. Noch besser ist der Weg zwei Packages zu erstellen. Ein RuntimePackage in dem alle Units leigen und ein DesigntimePackage das unter Requires dein RuntimePackage enthält und in Contains nur deine Unit für die Registrierung der Componenten. Bei allen anderen Packages bei denen du die Komponenten verwendest bindest du dann unter Requires dein RuntimePackage ein. Gruß oki |
Alle Zeitangaben in WEZ +1. Es ist jetzt 14:15 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 by Thomas Breitkreuz