AGB  ·  Datenschutz  ·  Impressum  







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

Wieso ändert Delphi die Icons?

Ein Thema von ken_jones · begonnen am 8. Apr 2014 · letzter Beitrag vom 9. Apr 2014
Antwort Antwort
ken_jones

Registriert seit: 16. Mai 2005
Ort: Luzern
154 Beiträge
 
Delphi 10 Seattle Enterprise
 
#1

Wieso ändert Delphi die Icons?

  Alt 8. Apr 2014, 01:00
Mir ist aufgefallen, dass bei meinen 2 Delphi XE5 Installationen folgendes passiert:

Wenn ich ein Projekt mit z.B. einem Speedbutton mit Icon bei GitHub einchecke, dann auf einem anderen PC mit derselben XE5 Lizenz öffne, builde, speichere und wieder bei GitHub einchecke, so wird im DFM immer eine Differenz im Byte 8 des Icon Bytestream festgestellt. z.B. wird aus B0 eine B4.

Was fummelt da Delphi rum? Ist das eine art Kopierschutz? Oder versteckte Information über den Compiler, rsp. PC auf welchem compiliert wird?

Ist nicht wahnsinnig wichtig, nimmt mich einfach wunder.
  Mit Zitat antworten Zitat
Benutzerbild von Union
Union

Registriert seit: 18. Mär 2004
Ort: Luxembourg
3.492 Beiträge
 
Delphi 7 Enterprise
 
#2

AW: Wieso ändert Delphi die Icons?

  Alt 8. Apr 2014, 07:21
Hängt von den installierten comctl dll ab und damit indirekt auch mit dee IE Version. Bei Imagelisten ist es auch so.
Ibi fas ubi proxima merces
sudo /Developer/Library/uninstall-devtools --mode=all
  Mit Zitat antworten Zitat
ken_jones

Registriert seit: 16. Mai 2005
Ort: Luzern
154 Beiträge
 
Delphi 10 Seattle Enterprise
 
#3

AW: Wieso ändert Delphi die Icons?

  Alt 8. Apr 2014, 21:51
Danke für die Info, das beruhigt irgendwie wieder. Werde somit mal die DLLs prüfen. Aber so wirklich Sinn gibt das ganze trotzdem nicht...
  Mit Zitat antworten Zitat
Benutzerbild von jaenicke
jaenicke

Registriert seit: 10. Jun 2003
Ort: Berlin
9.580 Beiträge
 
Delphi 11 Alexandria
 
#4

AW: Wieso ändert Delphi die Icons?

  Alt 8. Apr 2014, 21:56
Normalerweise checkt man ja ohnehin nur gewollte Änderungen ein. Und so etwas verwerfe ich beim Einchecken direkt wieder, deshalb stört mich das auch nicht sehr.
Sebastian Jänicke
Alle eigenen Projekte sind eingestellt, ebenso meine Homepage, Downloadlinks usw. im Forum bleiben aktiv!
  Mit Zitat antworten Zitat
Benutzerbild von Sherlock
Sherlock

Registriert seit: 10. Jan 2006
Ort: Offenbach
3.798 Beiträge
 
Delphi 12 Athens
 
#5

AW: Wieso ändert Delphi die Icons?

  Alt 9. Apr 2014, 08:16
Das haben wir hier in der Firma auch, die DFMs werden deshalb von uns beim Commit fast immer verworfen. Gewollt ändert sich da ja selten wirklich was. Ist allerdings eine nervige Sache, denn einen wirklich guten Grund für dieses absonderliche Verhalten gibt es ja nicht, oder doch?

Sherlock
Oliver
Geändert von Sherlock (Morgen um 16:78 Uhr) Grund: Weil ich es kann
  Mit Zitat antworten Zitat
Benutzerbild von Bernhard Geyer
Bernhard Geyer

Registriert seit: 13. Aug 2002
17.195 Beiträge
 
Delphi 10.4 Sydney
 
#6

AW: Wieso ändert Delphi die Icons?

  Alt 9. Apr 2014, 09:04
Wäre es möglich Beispielhaft 2* den Icon Bytestream zu posten?
Mithilfe der definition des Icon-Formats und einem Hex-Editor sollte sich doch wohl das Problem erklären lassen.
Windows Vista - Eine neue Erfahrung in Fehlern.
  Mit Zitat antworten Zitat
ken_jones

Registriert seit: 16. Mai 2005
Ort: Luzern
154 Beiträge
 
Delphi 10 Seattle Enterprise
 
#7

AW: Wieso ändert Delphi die Icons?

  Alt 9. Apr 2014, 09:21
Wäre es möglich Beispielhaft 2* den Icon Bytestream zu posten?
Gerne, hier aus dem heutigen Git Abgleich:

Code:
@@ -6781,7 +6857,7 @@ object frmMain: TfrmMain
     Left = 616
     Top = 112
     Bitmap = {
-      494C010101000800C40010001000FFFFFFFFFF10FFFFFFFFFFFFFFFF424D3600
+      494C010101000800C80010001000FFFFFFFFFF10FFFFFFFFFFFFFFFF424D3600
       0000000000003600000028000000400000001000000001002000000000000010
       0000000000000000000000000000000000000000000000000000EFE5D800A877
       2E00A8762E00A8772E00A8772E00A9772E00A9772E00A8772E00D3BB96000000
@@ -6964,7 +7040,7 @@ object frmMain: TfrmMain
     Left = 592
     Top = 296
     Bitmap = {
-      494C010102000800100110001000FFFFFFFFFF10FFFFFFFFFFFFFFFF424D3600
+      494C010102000800140110001000FFFFFFFFFF10FFFFFFFFFFFFFFFF424D3600
       0000000000003600000028000000400000001000000001002000000000000010
       0000000000000000000000000000000000000000000000000000000000000000
       00000000000001079F000313A9000418AE000419AE000313A9000108A0000000
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

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

AW: Wieso ändert Delphi die Icons?

  Alt 9. Apr 2014, 10:05
Zitat von http://en.wikipedia.org/wiki/BMP_file_format:
reserved; actual value depends on the application that creates the image
Zitat von http://msdn.microsoft.com/en-us/library/windows/desktop/dd183374.aspx:
WORD bfReserved2;
Vielleicht speichert MS dort seine API-Version, oder sowas.


Am aller Schönsten ist das ja bei ImgesListen, wenn sich da ab und an hunderte Zeilen ändern.

- einfach verwerfen, wenn man weiß, daß man dort nichts verändert hat (gibt keinerlei Probleme, solange man das im gesamten Stream zurücksetzt)
- oder einfach mal mit einchecken und man hat wieder ein paar Tage lang seine Ruhe
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 Bernhard Geyer
Bernhard Geyer

Registriert seit: 13. Aug 2002
17.195 Beiträge
 
Delphi 10.4 Sydney
 
#9

AW: Wieso ändert Delphi die Icons?

  Alt 9. Apr 2014, 11:01
Zitat von http://en.wikipedia.org/wiki/BMP_file_format:
reserved; actual value depends on the application that creates the image
Zitat von http://msdn.microsoft.com/en-us/library/windows/desktop/dd183374.aspx:
WORD bfReserved2;
Vielleicht speichert MS dort seine API-Version, oder sowas.
Dann wäre die Frage mit welcher Windows-Version die Checkins gelaufen sind.
Und was passiert wenn man mal mit Z.B. Win8.1 eingecheckt hat ob beim nächsten mal auch wieder sich der Wert ändert.
Windows Vista - Eine neue Erfahrung in Fehlern.
  Mit Zitat antworten Zitat
jbg

Registriert seit: 12. Jun 2002
3.483 Beiträge
 
Delphi 10.1 Berlin Professional
 
#10

AW: Wieso ändert Delphi die Icons?

  Alt 9. Apr 2014, 13:05
Vielleicht speichert MS dort seine API-Version, oder sowas.
Das ist nicht die API-Version sondern das Feld "WORD cGrow", das auf Basis von "cCurImage" (Aktuelle Anzahl) und "cMaxImage" (Capazität) bei jedem Laden (nicht beim Speichern) neu berechnet wird. Wenn man eine ImageListe lädt, dann ist nicht mehr identisch mit den Daten aus dem Stream.

(Struct von WINE stibitzt)
Code:
#define IMAGELIST_MAGIC 0x53414D58

/* Header used by ImageList_Read() and ImageList_Write() */
#include "pshpack2.h"
typedef struct _ILHEAD
{
    USHORT     usMagic;
    USHORT     usVersion;
    WORD       cCurImage;
    WORD       cMaxImage;
    WORD       cGrow;
    WORD       cx;
    WORD       cy;
    COLORREF   bkcolor;
    WORD       flags;
    SHORT      ovls[4];
} ILHEAD;
  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 04:36 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