AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

dxGDIPlusClasses überall in uses injiziert

Ein Thema von TurboMagic · begonnen am 15. Mai 2020 · letzter Beitrag vom 15. Mai 2020
Antwort Antwort
Seite 2 von 2     12   
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
43.136 Beiträge
 
Delphi 12 Athens
 
#11

AW: dxGDIPlusClasses überall in uses injiziert

  Alt 15. Mai 2020, 12:00
Nja, das "Package Installieren"-Fenster hat eine geheime Funktion.
  • machst du das, während ein Projekt geladen ist, dann werden die deaktivierten Packages im Projekt (DPROJ) gespeichert
  • machs es, während kein Projekt geladen ist, dann wird es in der Registry gespeichert
  • Es gibt aber unten auch noch den Haken "als Standard für neue Projekte",
    da sollte es auch in der Registry landen (und vielleicht nicht zusätzlich im geöffneten Projekt gespeichert)
Zumindestens ist es in XE noch so, aber vermutlich wurde das nicht geändert (in neueren Delphis noch nicht dazu gekommen es machen zu wollen).


Aber wenn TurboMagic das Projekt dann speichert, dann könnte es sein, dass diese Einstellung wieder aus der DPROJ rausfliegt, weil sein Delphi diese Packages nicht kennt und sie somit nicht deaktivieren kann.

Wenn man das Projekt wechselt/lädt, soger rechts in einer Projektgruppe, dann werden diese Packages jeweils (de)aktiviert.
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests
  Mit Zitat antworten Zitat
Benutzerbild von Uwe Raabe
Uwe Raabe

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

AW: dxGDIPlusClasses überall in uses injiziert

  Alt 15. Mai 2020, 12:05
Es gibt aber unten auch noch den Haken "als Standard für neue Projekte",
Den gibt es schon eine ganze Weile nicht mehr. Bleibt also nur die Möglichkeit, dies ohne geöffnetes Projekt einzustellen.

Projekt-bezogene Design-Packages sind sowieso eine Wissenschaft für sich.
Uwe Raabe
Certified Delphi Master Developer
Embarcadero MVP
Blog: The Art of Delphi Programming
  Mit Zitat antworten Zitat
Benutzerbild von stOrM
stOrM

Registriert seit: 7. Jun 2003
Ort: Mülheim an der Ruhr
434 Beiträge
 
Delphi 10.3 Rio
 
#13

AW: dxGDIPlusClasses überall in uses injiziert

  Alt 15. Mai 2020, 12:33
Ich hab jetzt hier nicht alles gelesen aber soweit mir bekannt ist, kommt das ganze noch aus Zeiten wo die IDE nativ noch keine PNG Images unterstütze. Devexpress hat dann seinerseits was eigenes gebastelt und sind dabei geblieben. Sprich sobald es um Images geht (png, jpeg usw. wird die Unit sofern man die Devexpress Komponenten benutzt automatisch eingebunden.)

Lt. Devexpress kann man dies unterbinden in dem man die Datei <DevExpressInstallationFolder>\ExpressCore Library\Sources\cxVer.inc editiert. Die Vorgehensweise wäre:

//{$DEFINE DXREGISTERPNGIMAGE} Save the file and run our <DevExpressInstallationFolder>\Setup\Setup.exe file in Recompile (not Repair) mode.


Solltte dies nicht gehen dann:

Comment out {$DEFINE DXREGISTERPNGIMAGE} in the dxGDIPlusClasses unit

Run our VCL Product Setup in Recompile mode.

Nachträglich ohne komplettes recompile der Suite wirds wohl nicht so einfach gehen. Wichtig ist vorher wirklich alles von Devexpress zu entfernen sonst scheint es Probleme zu geben bzw. funktioniert die Methode.nicht.

Zum restlosen entfernen wäre hier die entsprechende Info wohl hilfreich.
  Mit Zitat antworten Zitat
Benutzerbild von dummzeuch
dummzeuch

Registriert seit: 11. Aug 2012
Ort: Essen
1.468 Beiträge
 
Delphi 10.2 Tokyo Professional
 
#14

AW: dxGDIPlusClasses überall in uses injiziert

  Alt 15. Mai 2020, 12:38
Und ja: besser nix unpassendes einchecken ist gut.
Dazu müsste man aber, falls das automatisch eingefügt wird, einen Diff aller geänderten Units for
dem Einchcken machen
Also zumindest ich schaue mir das Diff aller Units an, die ich committe. Geht ja mit TortoiseSVN + BeyondCompare auch einfach. Ich drehe da auch immer wieder mal automatische Änderungen der IDE in den Uses-Listen, DFMs oder dproj-Dateien zurück oder mache auch manuelle Änderungen, die ich so gar nicht gewollt (oder vergessen) habe, rückgängig.
(Änderungen an den Hex-Codes von Bitmaps in den DFMs sind total nervig, da die schon durch andere Bildschirmauflösungen oder auch nur andere Grafiktreiber ausgelöst werden können. Die mache ich, wenn es nicht absichtliche Änderungen waren, komplett rückgängig. Das macht es auch einfacher, echte Änderungen zu erkennen.)

Aber ich committe auch immer ziemlich kleinteilig, also auch mal nur eine Zeile, wenn es keine Abhängigkeiten zu anderem Sourcecode gibt. Im Gegensatz zu meinen Kollegen, denen ich nicht abgewöhnen kann, erst nach tagelangen oder gar wochenlangen Änderungen zu committen. Die beschweren sich dann immer über Merge-Konflikte. Passiert mir nur selten und wenn, sind sie leicht zu beheben. Aber da habe ich kein Mitleid. Selbst schuld.
Thomas Mueller
  Mit Zitat antworten Zitat
TiGü

Registriert seit: 6. Apr 2011
Ort: Berlin
3.060 Beiträge
 
Delphi 10.4 Sydney
 
#15

AW: dxGDIPlusClasses überall in uses injiziert

  Alt 15. Mai 2020, 13:19
Aber ich committe auch immer ziemlich kleinteilig, also auch mal nur eine Zeile, wenn es keine Abhängigkeiten zu anderem Sourcecode gibt. Im Gegensatz zu meinen Kollegen, denen ich nicht abgewöhnen kann, erst nach tagelangen oder gar wochenlangen Änderungen zu committen. Die beschweren sich dann immer über Merge-Konflikte. Passiert mir nur selten und wenn, sind sie leicht zu beheben. Aber da habe ich kein Mitleid. Selbst schuld.
OT:
Ja, schreckliche Angewohnheit. Ich kämpfe da auch gegen Windmühlen.
Ich glaube, dass ist aber auch viel Faul- und Gewohnheit dabei.
Die wollen einfach nicht mehrfach das Commit-Fenster in TortoizeSVN öffnen. Zuviel Geklicke.

Oft ist ein SVN-Revsionseintrag fünf verschiedene Sachen (New, Bug, Feature, Übersetzung...) und 5 bis 12 Units angepackt.

Ob hier Gewalt eine Lösung ist? So wie bei den Yakuza?
https://de.wikipedia.org/wiki/Yubitsume
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
43.136 Beiträge
 
Delphi 12 Athens
 
#16

AW: dxGDIPlusClasses überall in uses injiziert

  Alt 15. Mai 2020, 13:33
Du kannst bei SVN und Git auch Commit/Push-Events registrieren.
Werden z.B. beim Commit solche Dinge gefunden, dann knallst denen automatisiert das um die Ohren und sie müssen es erst anpassen.





Man kann zwar auch automatisch Replaces damit bauen, aber das ist ja auch keine Lösung ... ohne Rückmeldung den Code zu verändern.
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests

Geändert von himitsu (15. Mai 2020 um 14:18 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von Uwe Raabe
Uwe Raabe

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

AW: dxGDIPlusClasses überall in uses injiziert

  Alt 15. Mai 2020, 14:33
Werden z.B. beim Commit solche Dinge gefunden, dann knallst denen automatisiert das um die Ohren und sie müssen es erst anpassen.
Ich fürchte, daß wird die Häufigkeit der Commits nur noch weiter reduzieren. Insbesondere, wenn devExpress die Units immer wieder in die uses-Clause schreibt.

Also zumindest ich schaue mir das Diff aller Units an, die ich committe. Geht ja mit TortoiseSVN + BeyondCompare auch einfach.
Das finde ich so toll bei der TortoiseHG Workbench: da sieht man die Änderungen direkt und kann die ungewollten Teile einfach aus dem Commit ausschließen (Häkchen weg - fertig). Das hat nebenbei noch den Vorteil, daß man die aktuelle Source-Datei dadurch gar nicht ändert und Delphi nicht meckert, wenn es die geänderten Dateien laden muss - und das womöglich nicht kann, weil noch ein abhängiges Form geöffnet ist.
Miniaturansicht angehängter Grafiken
15-05-_2020_15-29-40.jpg  
Uwe Raabe
Certified Delphi Master Developer
Embarcadero MVP
Blog: The Art of Delphi Programming
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 2 von 2     12   


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 03:32 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz