Einzelnen Beitrag anzeigen

Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
37.514 Beiträge
 
Delphi 10.4 Sydney
 
#17

AW: Umgenbunsvariable für Delphi-Version

  Alt 23. Feb 2021, 13:36
Nicht dproj.


Ja, ich verwende auch vorranig die Environments in der Registry.

Aber die PROJ haben auch den einen oder anderen Vorteil.
https://www.delphipraxis.net/197062-...efine-vcl.html
Wobei Dieses leider auch nur funktioniert, wenn der Typ "richtig" in der Project.dproj gespeichert ist.

Oder eben die environment.proj (kommt über CodeGear.Delphi.Targets -> CodeGear.Common.Targets ins Projekt)



Es gibt 3 PROJ, welche in die DPROJ gelinkt werden (falls forhanden).
Achtung beim Upgrade alter DPROJ in neue Delphi's, denn dabei schleichen sich hier Fehler ein, bzw. Einiges wird nicht (richtig) aktualisiert/upgegraded.
Früher waren z.B. einige Zeilen ohne IF-EXISTS, bzw. Manchs gab es noch nicht ... das ist beim Upgrade entweder falsch oder es fehlt sogar.


XML-Code:
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
    <PropertyGroup>
        ...
        <Config Condition="'$(Config)'==''">Debug</Config>
        <Platform Condition="'$(Platform)'==''">Win32</Platform>
        ...
    </PropertyGroup>
    ...
    <Import Project="$(BDS)\Bin\CodeGear.Delphi.Targets" Condition="Exists('$(BDS)\Bin\CodeGear.Delphi.Targets')"/>
    <Import Project="$(APPDATA)\Embarcadero\$(BDSAPPDATABASEDIR)\$(PRODUCTVERSION)\UserTools.proj" Condition="Exists('$(APPDATA)\Embarcadero\$(BDSAPPDATABASEDIR)\$(PRODUCTVERSION)\UserTools.proj')"/>
    <Import Project="$(MSBuildProjectName).deployproj" Condition="Exists('$(MSBuildProjectName).deployproj')"/>
</Project>
$(BDSBIN)\CodeGear.***.Targets : Deklariert die zu verwendenden Compiler und Stellt die Scripte für Compiler/Build/Clear/MakeAll/ClearAll/... bereit.

$(APPDATA)\...\UserTools.proj : Hier kann man "eigene" Erweiterungen einfügen (für den Inline-Compiler und auch direkt für's MSBUILD)

Aber beim Upgrade fehlt oben manchmal die Condition, dann kann man dem MSBUILD das Profiel sagen wie man will, genommen wird immer was zuletzt eingestellt war.
Und es fehlen auch machmal einige der Imports, bzw. sie sind falsch.
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
Delphi-Tage 2005-2014

Geändert von himitsu (23. Feb 2021 um 13:39 Uhr)
  Mit Zitat antworten Zitat