AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein GUI-Design mit VCL / FireMonkey / Common Controls Delphi Gemeinsam genutzte Units in mehreren Komponenten
Thema durchsuchen
Ansicht
Themen-Optionen

Gemeinsam genutzte Units in mehreren Komponenten

Ein Thema von Blumix · begonnen am 2. Jan 2017 · letzter Beitrag vom 5. Jan 2017
Antwort Antwort
Blumix

Registriert seit: 4. Jun 2008
12 Beiträge
 
#1

Gemeinsam genutzte Units in mehreren Komponenten

  Alt 2. Jan 2017, 09:22
Hallo Leute,

ich habe ein Problem mit gemeinsam genutzten Units in mehreren Komponenten.
Ich möchte von mir geschriebene Units in mehreren Komponenten nutzen, ohne das ich die zuvor geschriebene Komponente in die Nächste einbinden muss.

Beispiel:
Ich habe eine Unit Funktionen geschrieben die ich fast in jedes Projekt einbinde. Zuerst habe ich mir einen erweiterten TTreeView erstellt und später
habe ich ein kleine Office Komponente geschrieben. In diesen 2 Komponenten wird jeweils diese Unit eingebunden. Nun will Delphi immer den erweiterten
TTreeView in die Office Komponente einbinden, obwohl diese gar nix mit einander zu tun haben.

Gibt es dazu eine einfache Lösung, dass dies nicht geschieht?
  Mit Zitat antworten Zitat
Headbucket

Registriert seit: 12. Dez 2013
Ort: Dresden
172 Beiträge
 
Delphi 10.2 Tokyo Professional
 
#2

AW: Gemeinsam genutzte Units in mehreren Komponenten

  Alt 2. Jan 2017, 09:37
Die gemeinsamen Units sollten natürlich alle eigenständig übersetzbar sein.

Du scheinst also irgendwo in deiner gemeinsamen Unit "Funktionen" auf die Komponenten TTreeView zu verweisen. Das sollte natürlich nicht der Fall sein. TTreeView sollte die gemeinsame Unit nutzen und nicht andersherum.

Falls du den Fehler nicht selbst findest, dann kannst du natürlich auch gerne mal beide Units hier hochladen.
  Mit Zitat antworten Zitat
Blumix

Registriert seit: 4. Jun 2008
12 Beiträge
 
#3

AW: Gemeinsam genutzte Units in mehreren Komponenten

  Alt 5. Jan 2017, 11:46
Es ist leider nicht so. Ich habe jetzt noch etwas herum probiert und bin zu folgendem Schluss gekommen.

Wenn man im Delphi eine Package erstellt mit diversen Units werden diese in diese Package mit ein kompiliert.
Sobald man danach die nächste Package installiert, sucht Delphi nach genutzten Units in anderen Packages. Falls Delphi
eine Package findet in der diese Units schon verwendet werden, wird diese Package mit in der nächsten Package verwendet und wird
zu den erforderlichen Packages hinzugefügt.

Das lässt sich wahrscheinlich auch nicht verhindern.

Ich werde mir wohl eine Package erstellen müssen in der meine Standard Units drin sind.


Oder hat jemand eine bessere Lösung?
  Mit Zitat antworten Zitat
Benutzerbild von uligerhardt
uligerhardt

Registriert seit: 19. Aug 2004
Ort: Hof/Saale
1.746 Beiträge
 
Delphi 2007 Professional
 
#4

AW: Gemeinsam genutzte Units in mehreren Komponenten

  Alt 5. Jan 2017, 12:01
Ich werde mir wohl eine Package erstellen müssen in der meine Standard Units drin sind.
So funktionieren Packages. Jede Unit darf in maximal einem Package enthalten sein, egal, ob ex- oder implizit.
Uli Gerhardt
  Mit Zitat antworten Zitat
Benutzerbild von Mavarik
Mavarik

Registriert seit: 9. Feb 2006
Ort: Stolberg (Rhld)
4.143 Beiträge
 
Delphi 10.3 Rio
 
#5

AW: Gemeinsam genutzte Units in mehreren Komponenten

  Alt 5. Jan 2017, 15:17
So funktionieren Packages. Jede Unit darf in maximal einem Package enthalten sein, egal, ob ex- oder implizit.
What?

Wie kommst Du den darauf?

Stop - Runtime oder Designtime Packages?
  Mit Zitat antworten Zitat
Benutzerbild von Uwe Raabe
Uwe Raabe
Online

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

AW: Gemeinsam genutzte Units in mehreren Komponenten

  Alt 5. Jan 2017, 16:35
So funktionieren Packages. Jede Unit darf in maximal einem Package enthalten sein, egal, ob ex- oder implizit.
Stop - Runtime oder Designtime Packages?
Das ist egal. Wenn zwei Packages dieselbe Unit enthalten, können Sie zumindest nicht gleichzeitig geladen sein - ob nun in der IDE oder einer mit Runtime-Packages compilierten Anwendung.

Eine Unit kann weder direkt noch indirekt in mehr als einem Package einer Anwendung enthalten sein.
Uwe Raabe
Certified Delphi Master Developer
Embarcadero MVP
Blog: The Art of Delphi Programming
  Mit Zitat antworten Zitat
Antwort Antwort


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 10:50 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