"Paket A kann nicht geladen werden, es enthält Einheit X, die auch in Paket B enthalten ist."

(Mehr Spaß bei der Installation von Paketen / Komponenten für mich - danke an alle für Ihre bisherige Hilfe).

In Delphi 2007 wird der Fehler als Titel aufgeführt. Paket A ist mein Paket aus rahmenbasierten "Viewer-Fenstern". Paket B ist ein Paket, das einige Komponenten enthält, die zum Anzeigen von Informationen zu Datasets verwendet werden, die mit einer GVEN-Datenbank verknüpft sind (deren SQL, Status, Klassentyp usw.). Eine dieser Komponenten ist eine nicht visuelle Komponente (wir werden es nennen) Inspector), der ein Formular erstellt und aufruft, das diese Informationen enthält. Einheit X ist die Einheit dieser Form.

Ich habe die Inspector-Komponente zu einem meiner Viewer-Fenster in Package hinzugefügt, habe sie jedoch inzwischen gelöscht und kann in View Source für das Projekt keinen Verweis darauf finden, und auch nicht in der Unit des Frame-basierten Viewer-Fensters, zu dem ich sie hinzugefügt habe. Wo versteckt sich die Referenz?

Wodurch würde das Hinzufügen dieser Inspector-Komponente zu einem der Ansichtsfensterrahmen (die auch als registrierte Komponenten installiert werden) dieses Problem verursachen?

Dies hängt wahrscheinlich mit zusammenDiese vorherige Frage unddieses Ich habe mich jedoch dazu entschlossen, mit diesem speziellen Problem neu zu beginnen, nur um es kurz und bündig zu halten und hoffentlich auch später für andere von Nutzen zu sein. Vielen Dank im Voraus für jede Hilfe.

Aktualisieren:

Dank Loren konnte ich die verbleibende USES-Referenz finden und entfernen, die das Problem verursacht hat. Ich bin mir jedoch immer noch nicht sicher, wie ich das erreichen soll, was ich erreichen will. : \ Hier ist das Neueste:

Der Inspector ist eine einfache nicht visuelle Komponente, die eine DataSet-Eigenschaft und ein internes "Info-Formular" enthält. Durch Aufrufen einer ShowInfo-Methode wird das Formular erstellt und mit verschiedenen Informationen zum verknüpften DataSet gefüllt. Ich möchte es verwenden, um das SQL zu debuggen, das die Zuschauer antreibt.

Wie oben erwähnt, ist der Inspector in Paket B enthalten. Die Viewer befinden sich in Paket A. Ich möchte die Inspector-Komponente für einige der TFrame-Nachfahren verwenden (die als echte Palettenkomponenten registriert sind). Wenn ich diese Komponente jedoch auf dem angegebenen TFrame ablege, um sie zu verwenden, und Paket A kompiliere / installiere, erhalte ich die Fehlermeldung "Paket A kann nicht geladen werden, es enthält Einheit X, die auch in Paket B enthalten ist". Es ist jetzt eindeutig die Ursache, und ich kann das Problem bei Bedarf neu erstellen.

moobaas vorschlag unten macht sinn, und doch ist esscheint dass, obwohl ich versuche, Ansatz 2 von dem zu tun, was er vorschlägt, es nicht funktioniert. Was vermisse ich? Anscheinend sollte dies machbar sein, und tatsächlich scheinen die meisten Pakete, die ich gesehen habe, die ganze Zeit andere installierte Pakete zu verwenden (einschließlich der VCL selbst).

Hinweis: Paket B hängt, soweit ich das beurteilen kann, nicht von Paket A ab (und ich habe es eigenständig installiert, also scheint das zu stimmen).

(Übrigens, gibt es Tools, mit denen Sie Paketabhängigkeiten wie diese ermitteln können? Ich verwende D2007.)

Vielen Dank für Ihre Zeit und Ihre Hilfe.

Antworten auf die Frage(3)

Ihre Antwort auf die Frage