![]() |
Namespaces unter Delphi 10 Rio
Hi zusammen
Nachdem ich nun alle Fremdkomponenten im Anschluss an ![]() Mit allen anderen Fremdkomponenten wars genau dasselbe, einschliesslich der TFilesearcher-Komponte, von der ich aus früheren Versionen (auch Tokio) weiss, dass sie sich Problemlos neu compilieren lässt, bzw. auch ohne diese installiert werden kann. Such- und Bibliothekspfad sollte soweit in Ordnung sein, also hab ich mich mal versucht, zu Namespaces schlau zu machen. Soweit ich das richtig verstanden habe, muss ich dem Unitnamen den gewünschten Namespace-Namen voranstellen, bevor ich sie zusammen mit diesem speichere. Hab ich das richtig verstanden? Oder muss ein eigener Namespace speziell deklariert werden? Gruss Delbor |
AW: Namespaces unter Delphi 10 Rio
Man muss in eigenen Units keine Namespaces nutzen. Es macht aus Gründen der Übersichtlichkeit natürlich Sinn, ist aber keine Pflicht.
Lediglich bei bestehenden Namespaces in Units, z.B. beim Zugriff auf VCL- und RTL-Units, muss man den Namespace entweder in den Projektoptionen hinterlegen oder an jeder Unit in der uses-Klausel angeben. Wenn der Compiler also eine Unit nicht finden kann, liegt die .dcu nicht im Bibliothekspfad. Mit Hilfe des Process Monitors kann man auch leicht prüfen wo gesucht wird. Ein beliebter Fehler ist den 64-Bit Bibliothekspfad statt den für 32-Bit zu setzen. |
AW: Namespaces unter Delphi 10 Rio
Hi jaenicke
Zitat:
In den letzten Wochen hab ich mir angewöhnt, für alle Projekte nebst dem Debug- auch ein DCU-Verzeichnis anzulegen. Du hattest mal davon gesprochen, dass ihr einen eigenen zentralen Dcu-Pfad benützt. Ich denke, dass sollte ich beherzigen. Angelegt hab ich mir sowas zwar, hatte dann aber bedenken, dass es nicht so einfach sein könnte, da nur die DCUs eines bestimmten Projektes zu löschen, Tja, man kann auch verkehrt denken... Gruss Delbor PS: Zitat:
|
AW: Namespaces unter Delphi 10 Rio
Zitat:
Dazu haben wir dann ein zweites Verzeichnis, in das die diversen Projekte, jeweils in einem eigenen Unterordner und darin nach Plattform und Debugkonfiguration getrennt, ihre .dcu Dateien ablegen. Denn die werden ja nur innerhalb des Projekts benötigt. Der Effekt ist, dass gemeinsame Units zentral in Packages kompiliert und von allen Projekten gefunden werden. Diese Units werden auch nicht in die verschiedenen Projekte eingebunden. Die Units der einzelnen Projekte wiederum behindern sich gegenseitig auch nicht, denn diese kompilieren ja immer in verschiedene Verzeichnisse. Und wie du schon sagtest, man kann so die .dcu Dateien eines Projektes leicht löschen. Wir können aber auch alle .dcu Dateien, auch die im Bibliothekspfad, löschen und dann einfach per Batchdatei wieder erstellen lassen. Die Batchdatei kopiert die .res Dateien usw., die eingebunden werden, in den Bibliothekspfad und kompiliert dann mit Hilfe von msbuild die Packages. In der aktuellen Version installiert es auch die Packages, so dass die Installation nun sehr einfach ist: Delphi installieren, JEDIs installieren, install.cmd ausführen Es werden auch die Einstellungen von Delphi und den CnWizards direkt gesetzt. |
AW: Namespaces unter Delphi 10 Rio
Hi jaenicke
So, wie's jetzt aussieht, gibts wohl etwas mehr Arbeit für mich - ich hab das eine Package-Projekt geöffnet, da den DCU-Pfad geändert und neu compiliert. Allerdings habe ich die Komponenten nicht deinstalliert, und so ist eigentlich alles beim alten geblieben. Das heisst für mich eigentlich: Neu anfangen. Wobei ich mir auch nicht sicher bin, nicht von Anfang an einen Fehler gemacht zu haben: Statt <Komponente/Komponente installieren> habe ich über die Objectablage ein neues Package erstellt und da die Komponenten reingepackt. Auch möglich, dass dsa nicht explizit falsch ist, nur sollte ich über <Komponente/Komponente installieren> mehr Möglichkeiten haben. Gruss Delbor |
AW: Namespaces unter Delphi 10 Rio
Zitat:
Der Weg über ein ganz normales Package ist schon richtig. Das Problem ist immer noch die Unit ocr, die in diesem Package drin ist. Wie lauten denn der dcu- und der dcp-Ausgabepfad? Und wie sieht dein Bibliothkspfad aus? Wo liegt die ocr.dcu? |
AW: Namespaces unter Delphi 10 Rio
Hi jaenicke
Zitat:
Die einzelnen Package-Projekte und die Bpls gibts ja noch. Von daher ists wirklich das einfachste, diese zu bearbeiten und neu zu compilieren. Zitat:
Zitat:
Die OCR liegt hier: F:\Embarcadero Erweiterungs-Corner\DCU. Diesen Pfad hab ich angegeben, bevor ich neu kompilierte. Diese Unit sollte also gefunden werden, wenn ich wieder neu installiere. Bei den andern Fremdkomponenten muss ich die Pfade noch anpassen. Gruss Delbor |
AW: Namespaces unter Delphi 10 Rio
Zitat:
|
AW: Namespaces unter Delphi 10 Rio
Hi jaenicke
Zitat:
Und die Sache mit dem Drag&Drop - da hätte ich auch selbst draufkommen müssen. Die DCUs liegen jeweils zusätzlich zum Verzeichnis'Debug' im Ordner der jeweilge Komponente, während die dcps in dem unter Tools/Optionen festgelegte Ordner liegen. Gruss Delbor |
AW: Namespaces unter Delphi 10 Rio
Hi zusammen
Zitat:
![]() Zitat daraus: Zitat:
Das würde bedeuten, dass ich die Sourcen der Komponenten neu mit einem Namespace speichern und die Komponente neu kompilieren muss. Hat da jemand andere Erfahrungen? Gruss Delbor |
Alle Zeitangaben in WEZ +1. Es ist jetzt 00:58 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-2025 by Thomas Breitkreuz