AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Die Delphi-IDE Best Practice für Delphi Pfade gesucht
Thema durchsuchen
Ansicht
Themen-Optionen

Best Practice für Delphi Pfade gesucht

Ein Thema von TigerLilly · begonnen am 15. Jan 2020 · letzter Beitrag vom 17. Jan 2020
Antwort Antwort
Benutzerbild von jaenicke
jaenicke

Registriert seit: 10. Jun 2003
Ort: Berlin
10.054 Beiträge
 
Delphi 12 Athens
 
#1

AW: Best Practice für Delphi Pfade gesucht

  Alt 16. Jan 2020, 08:13
Wenn ich jetzt ein Build meines Projekts mache, compiliert Delphi die LibraryA und stellt die DCU in das Outputverzeichnis und nicht in den Librarypfad?
Nein, die Projekte finden die LibraryA.pas ja nicht, weil sie nicht im Bibliothekspfad liegt. Daher verwenden sie die vorkompilierte Version. Nur deine Packages, die die Datei eingebunden haben, legen diese in den Bibliothekspfad, der dort natürlich das DCU-Ausgabeverzeichnis sein muss.

Wir können so auch zwischen zwei komplett unterschiedlichen Umgebunden wechseln, weil ich Skripte und Programme geschrieben haben, die die Umgebung komplett umstellen mit allen Pfaden, installierten Packages usw. und auch alle Bibliotheken kompilieren.

Jetzt habe ich noch Code, der für mehrere Projekte gleich ist - eigener Bibliothkescode. Der soll bei Änderungen mit dem Projekt mitkompiliert werden (Halt! Schlechter Prozess? Über die versionskontrolle bekomme ich eine Änderung ausgecheckt + müsste sofort einen Buildprozess haben.)
Für den Zweck gibt es bei uns teilweise gleichnamige Projekte mit _debug im Namen, die die Bibliotheksunits auch enthalten. Die werden dann verwendet, wenn die Bibliotheksunits im Rahmen des Projekts selbst angepasst werden sollen. Die haben natürlich auch ein eigenes DCU-Ausgabeverzeichnis.
Ansonsten wird solcher Code in Packages vorkompiliert und nicht in den Projekten selbst.
Sebastian Jänicke
AppCentral

Geändert von jaenicke (16. Jan 2020 um 08:15 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von TigerLilly
TigerLilly

Registriert seit: 24. Mai 2017
Ort: Wien, Österreich
1.251 Beiträge
 
Delphi 12 Athens
 
#2

AW: Best Practice für Delphi Pfade gesucht

  Alt 16. Jan 2020, 12:35
Funktioniert nicht so, wie ich will.

Ich habe eine 3rdParty Lib, die hat PAS und RES Dateien im gleichen Verzeichnis und ist nach dem Setup vorkompiliert (RELEASE).
Ich habe den LibraryPfad auf das DCU Verzeichnis und auch wg der RES Dateien auf das PAS Verzeichnis.

Kompiliere ich jetzt mein Projekt mit DEBUG werden die 3rd Partys auch kompiliert. Was ich aber nicht will.
  Mit Zitat antworten Zitat
Benutzerbild von Uwe Raabe
Uwe Raabe

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

AW: Best Practice für Delphi Pfade gesucht

  Alt 16. Jan 2020, 12:46
Ich habe eine 3rdParty Lib, die hat PAS und RES Dateien im gleichen Verzeichnis und ist nach dem Setup vorkompiliert (RELEASE).
Das ist leider ein häufig anzutreffender Fauxpas bei diesen Setups. Wenn man schon die Units vorkompiliert ablegt, dann müssen die Ressourcen natürlich auch als Kopie in diesem Verzeichnis abgelegt werden. Ansonsten kann man sich das vorherige Erzeugen der DCUs auch schenken.
Uwe Raabe
Certified Delphi Master Developer
Embarcadero MVP
Blog: The Art of Delphi Programming
  Mit Zitat antworten Zitat
Benutzerbild von TigerLilly
TigerLilly

Registriert seit: 24. Mai 2017
Ort: Wien, Österreich
1.251 Beiträge
 
Delphi 12 Athens
 
#4

AW: Best Practice für Delphi Pfade gesucht

  Alt 16. Jan 2020, 14:22
Ja. Und ebenso cool wäre es, wenn 3rd Party Anbieter Ihre Units in einer DPROJ oder Gruppe zusammenfassen, damit das (Neu)-Compilieren nur einen Schritt benötigt.
  Mit Zitat antworten Zitat
Benutzerbild von Uwe Raabe
Uwe Raabe

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

AW: Best Practice für Delphi Pfade gesucht

  Alt 16. Jan 2020, 14:38
Ja. Und ebenso cool wäre es, wenn 3rd Party Anbieter Ihre Units in einer DPROJ oder Gruppe zusammenfassen, damit das (Neu)-Compilieren nur einen Schritt benötigt.
Gut gesagt! Delphi Library Guidelines
Uwe Raabe
Certified Delphi Master Developer
Embarcadero MVP
Blog: The Art of Delphi Programming
  Mit Zitat antworten Zitat
Benutzerbild von TigerLilly
TigerLilly

Registriert seit: 24. Mai 2017
Ort: Wien, Österreich
1.251 Beiträge
 
Delphi 12 Athens
 
#6

AW: Best Practice für Delphi Pfade gesucht

  Alt 16. Jan 2020, 15:45
  Mit Zitat antworten Zitat
HeZa

Registriert seit: 4. Nov 2004
Ort: Dortmund
182 Beiträge
 
Delphi 10 Seattle Professional
 
#7

AW: Best Practice für Delphi Pfade gesucht

  Alt 16. Jan 2020, 19:57
Wenn trotzdem noch Fragen bezüglich des Suchpfades offen sind, dann empfehle ich den Process-Monitor von SysInternals (ProcMon.exe). Damit lässt sich leicht verfolgen wo wirklich gesucht wird.

Man muss sich allerdings etwas mit dem Tool auseinandersetzen um einen brauchbaren Event-Filter zu definieren.
  Mit Zitat antworten Zitat
Benutzerbild von jaenicke
jaenicke

Registriert seit: 10. Jun 2003
Ort: Berlin
10.054 Beiträge
 
Delphi 12 Athens
 
#8

AW: Best Practice für Delphi Pfade gesucht

  Alt 17. Jan 2020, 05:59
Ich habe eine 3rdParty Lib, die hat PAS und RES Dateien im gleichen Verzeichnis und ist nach dem Setup vorkompiliert (RELEASE).
Ich habe den LibraryPfad auf das DCU Verzeichnis und auch wg der RES Dateien auf das PAS Verzeichnis.
Genau aus solchen Gründen verwenden wir entsprechende Buildskripts. Die kopieren vor dem Kompilieren der (eigenen und fremden) Packages schlicht die .res und .dfm Dateien in unseren Bibliothekspfad. Dadurch stehen in diesem auch nur die Pfade der JEDIs (die wir natürlich nicht selbst anders installieren) und unser Bibliothekspfad mit Platzhaltern für Delphiversion, Plattform usw. drin sowie FastMM4.

Auf die Weise lässt sich das auch sehr einfach mit verschiedenen Delphiversionen nutzen. Im Installskript wird schlicht je nach Delphiversion eine Umgebungsvariable in Delphi gesetzt, die die Version angibt. So kann man das auch als Platzhalter in den Pfaden nutzen und hat immer die gleichen Pfade für alle Versionen. Als Version nutze ich dabei die Version, die auch in der Registry verwendet wird, da der Installer dort ja die Pfade usw. ablegen muss. So ist das alles konsistent und man braucht nur die eine Versionsnummer.

Die Zeit, die man für solche Skripte verwendet, spart man hinterher z.B. bei neuen Delphiversionen. Außerdem macht es das Leben leichter und damit hat man einfach bessere Laune, wenn das einfach so läuft.
Sebastian Jänicke
AppCentral
  Mit Zitat antworten Zitat
Benutzerbild von TigerLilly
TigerLilly

Registriert seit: 24. Mai 2017
Ort: Wien, Österreich
1.251 Beiträge
 
Delphi 12 Athens
 
#9

AW: Best Practice für Delphi Pfade gesucht

  Alt 17. Jan 2020, 08:51
Cool. Danke für die vielen Hinweise. Ich setze meine Entwicklungsumgebung neu auf + was ich bisher hatte ist über Jahrzehnte historisch gewachsen + da war es höchste Zeit sich manche Ecken mal genauer anzusehen. Weil "es funktioniert" ist manchmal halt doch zu wenig.

  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 18:06 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