Einzelnen Beitrag anzeigen

Nathan

Registriert seit: 6. Nov 2003
Ort: Birmensdorf / Zürich
29 Beiträge
 
Delphi 10.2 Tokyo Enterprise
 
#6

AW: ein DevExpressVCL-Compiler

  Alt 18. Aug 2023, 17:06
Hallo zusammen
Den Kampf mit DevExpress haben wir auch. Bei uns ist es vom Projekt her so, das verschiede Versionen auch verschiedene DevExpress Versionen brauchen.
Bedeutet Delphi mal mit DevExpress 20 mal 21 usw.. Hiess immer DevExpress deinstallieren und installieren.

Um das zu beschleunigen, gehen wir hin und entfernen unter Windows, die globale Path Variable DXVCL nach einer Installation. Danach kommt die Umgebungsvariable DXVCL in die IDE als Umgebungsvariable. Bei jedem Wechsel, entfernen wir alle Einträge aus ..\SOFTWARE\Embarcadero\BDS\xx.0\Known Packages die mit DevExpress zu tun haben und schreiben sie neu auf die gewünschte Version. Wichtig ist, das die globale Umgebungsvariable weg ist, sonst sucht die IDE erst dort und passen die Versionen nicht zusammen geht nichts.

Was wir noch machen, sind Codeänderungen direkt in DevExpress Units. Führt dazu das man DevExpress immer neu kompilieren muss. Um das zu automatisieren, rufen wir das DevExpress Setup 2 mal auf. Einmal mit ..\DevExpress VCL\Setup\Setup.exe /M und einmal mit /C

/M (Modifiy) ist hier vor dem /C (zum Kompilierern) wichtig. Es bereinigt den Registry Eintrag "UserInfo" unter "Computer\HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\ Developer Express VCL Products". Das Setup prüft dort ob die "UserInfo" zu "Build" und "BuildCode" passt. Mit /M wird "UserInfo" angepasst. Wie der Eintrag "UserInfo" zusammengestellt wird, hat DevExpress nie verraten. Sie meinten das ich dort nichts zu suchen hab. Aber mit /M und auf die gewünschte DevExpress Version angepassten "Build", "BuildCode" Werten kann man das kompilieren mehr oder weniger automatisieren bzw. beschleunigen. Es wir immer noch alles kompiliert, aber man muss vorher nichts deinstallieren.

Manuell jedes Package kompilieren hatten wir auch überlegt, aber verworfen. Weil es viel zu viele sind und bei einer neuen Version muss man alle wieder zusammensuchen. Das Setup weiss das alles. Davon abgesehen, alle Packages zu kompilieren geht schon. Hab mal ein Github Repo angeschaut unter: https://github.com/Delphier/DxAutoInstaller was wir aber nie weiter verfolgt haben.
Nathan Chanan Thurnreiter
  Mit Zitat antworten Zitat