Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   Prism 2 Componenten "vertragen" sich nicht? (https://www.delphipraxis.net/49668-2-componenten-vertragen-sich-nicht.html)

Master_BB 14. Jul 2005 11:54


2 Componenten "vertragen" sich nicht?
 
Hallo,
ich habe bisher 2 Componenten für .NET geschrieben. Einzeln kann ich sie verwenden,
setzte ich jedoch beide auf eine WinForm dann kommt der fehler das
"Packages Bla und Bla2 both contain unit borland.delphi.system"
das kann aber garnicht seien da in beiden ich nur
System.Windows.Forms, System.Drawings und System.ComponentModel
als Units benutze um nur auf dem Framework zu arbeiten.
Wie kommt das?
Als tip gibt mir die hilfe beides in ein Package zu packen jedoch
würde ich schon gern einige Komponenten in verschiedene Packages
zusammenschließen und nicht alles mixen.
Wenn mir da mal jemand helfen könnte vieleicht auch nen
alternativen aufbau zeigen.
Es handelt sich hier um einen TBitBtn udn ein TRichTextBoxAdvanced.
Ersteres ist klar die halt der TBitBit auf Framework basis und 2teres
ist ein richedit wo am linken rand die zeilen angezeigt werden.

Greetz

evilboy 14. Jul 2005 18:33

Re: 2 Componenten "vertragen" sich nicht?
 
Füge in die Package von RichEditAdvanced die Abhängigkeit/requires zu vcl80.dpl und rtl80.dpl ein. (Sorry, ich weiß gerade nicht genau wie diese jetzt in Delphi 8 heißen, aber sollte so ähnlich gehen wie in Delphi 7.)

Robert_G 14. Jul 2005 20:55

Re: 2 Componenten "vertragen" sich nicht?
 
Dein Problem ist die Borland.Delphi.dll aka die RTL von Delphi.Net.
Der Inhalt wird (IMHO per default) direkt in eine Assembly kompiliert.
Wenn du nun die zweite D.Net Assembly lädst kommen sich beide RTLs in die Quere.
Du _musst_ die RTL referenzieren das heißt: du musst sie auch immer mit deinen Assemblies mitgeben.

Und zur 2. Frage[1]
Es ist generell keine gute Idee nur wenige Klassen in einer Assembly und wieder ein paar in einer anderen zu haben, wenn diese Klassen auf die gleiche Aufgabe zielen bzw. sehr wahrscheinlich gemeinsam verwendet werden.
Auch zu feine Aufgliederungen in zu viele Namespaces hat sich als sehr nervig gezeigt.



[1] welche hier durchaus nicht gegen "neue Frage, neuer Thread verstößt"


Alle Zeitangaben in WEZ +1. Es ist jetzt 09:38 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