AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Code-Bibliothek Neuen Beitrag zur Code-Library hinzufügen Delphi Laden und Speichern von Icons (Icon Parser, für Icon Dateien oder Resourcen)
Thema durchsuchen
Ansicht
Themen-Optionen

Laden und Speichern von Icons (Icon Parser, für Icon Dateien oder Resourcen)

Ein Thema von Zacherl · begonnen am 28. Sep 2012 · letzter Beitrag vom 22. Nov 2016
Antwort Antwort
Benutzerbild von Zacherl
Zacherl

Registriert seit: 3. Sep 2004
4.629 Beiträge
 
Delphi 10.2 Tokyo Starter
 
#1

AW: Laden und Speichern von Icons (Icon Parser, für Icon Dateien oder Resourcen)

  Alt 2. Jan 2013, 19:07
Hier schonmal ein temporärer Bugfix für das Problem. Werde den Code nochmal etwas überarbeiten, da die momentane Lösung etwas unsauber ist:
1) Die EnumResource* Callbacks hatten einen Fehler, bei dem Strings nicht korrekt nullterminiert wurden
2) Ich hatte versucht EndUpdateResource() aufzurufen, während die Datei noch per LoadLibraryEx() geladen war. Daher kam auch die "Zugriff verweigert" Meldung.

Allerdings wurde das Delphi Icon bei mir auch nach diesen Änderungen nicht korrekt übernommen. Die CaCV.exe hatte danach einfach überhaupt kein Icon mehr. Warum das so ist, kann ich mir allerdings auch nicht erklären. Habe es daraufhin mal mit einem anderen Icon probiert und das funktioniert wunderbar (2 von 3 Resourcen Editoren hatten mit dem alten Delphi Icon, das du versuchst hinzuzufügen, ebenfals Probleme).
Angehängte Dateien
Dateityp: pas dxIconUtils.pas (17,5 KB, 23x aufgerufen)
Projekte:
- GitHub (Profil, zyantific)
- zYan Disassembler Engine ( Zydis Online, Zydis GitHub)
  Mit Zitat antworten Zitat
ringli

Registriert seit: 7. Okt 2004
517 Beiträge
 
Delphi 11 Alexandria
 
#2

AW: Laden und Speichern von Icons (Icon Parser, für Icon Dateien oder Resourcen)

  Alt 2. Jan 2013, 19:34
So wie es aussieht, funktioniert es erstmal. Danke für den Bugfix.

Wenn du schon beim Überarbeiten bist könntest du nochmal nachsehen warum die 256 x 256 Pixel Icons nicht mit übernommen werden.
  Mit Zitat antworten Zitat
Benutzerbild von Zacherl
Zacherl

Registriert seit: 3. Sep 2004
4.629 Beiträge
 
Delphi 10.2 Tokyo Starter
 
#3

AW: Laden und Speichern von Icons (Icon Parser, für Icon Dateien oder Resourcen)

  Alt 2. Jan 2013, 19:49
Wenn du schon beim Überarbeiten bist könntest du nochmal nachsehen warum die 256 x 256 Pixel Icons nicht mit übernommen werden.
Hat bei mir funktioniert Habe getestet mit dem standard Delphi XE2 Icon.
Projekte:
- GitHub (Profil, zyantific)
- zYan Disassembler Engine ( Zydis Online, Zydis GitHub)
  Mit Zitat antworten Zitat
ringli

Registriert seit: 7. Okt 2004
517 Beiträge
 
Delphi 11 Alexandria
 
#4

AW: Laden und Speichern von Icons (Icon Parser, für Icon Dateien oder Resourcen)

  Alt 2. Jan 2013, 20:15
Bei mir hat es nicht funktioniert. Mal sehen ob ich noch etwas rausfinde woran es bei mir liegen könnte.
  Mit Zitat antworten Zitat
ringli

Registriert seit: 7. Okt 2004
517 Beiträge
 
Delphi 11 Alexandria
 
#5

AW: Laden und Speichern von Icons (Icon Parser, für Icon Dateien oder Resourcen)

  Alt 6. Jan 2013, 14:48
Du hast recht, die 256 x 256 Icons werden tatsächlich hinzugefügt. Allerdings werden diese falsch gekennzeichnet. Anbei mal ein Screenshot vom Resourcenviewer. Hier sieht man, das das Icon zwar vorhanden ist, allerdings wird die Größe falsch gekennzeichnet mit 13 x 0 (Bild: Iconresourcen Zieldatei nach Verwendung der dxIconUtils.png).

Der andere Screenshot (Bild: Iconresourcen Quelldatei.png) zeigt die enthaltenen Iconresourcen der Quelldatei mit den passenden Größen.
Angehängte Grafiken
Dateityp: png Iconresourcen Quelldatei.png (90,6 KB, 27x aufgerufen)
Dateityp: png Iconresourcen Zieldatei nach Verwendung der dxIconUtils.png (91,1 KB, 29x aufgerufen)
  Mit Zitat antworten Zitat
Benutzerbild von Zacherl
Zacherl

Registriert seit: 3. Sep 2004
4.629 Beiträge
 
Delphi 10.2 Tokyo Starter
 
#6

AW: Laden und Speichern von Icons (Icon Parser, für Icon Dateien oder Resourcen)

  Alt 6. Jan 2013, 15:47
Puh da scheint einiges schief zu gehen Ich schaue bei Gelegenheit mal, ob ich die Fehlerursache auf die Schnelle finde. Hast du mal im Debugger geschaut, ob der GroupIcon Header für das entsprechende 256px Icon korrekte Werte beinhaltet?
Projekte:
- GitHub (Profil, zyantific)
- zYan Disassembler Engine ( Zydis Online, Zydis GitHub)
  Mit Zitat antworten Zitat
ringli

Registriert seit: 7. Okt 2004
517 Beiträge
 
Delphi 11 Alexandria
 
#7

AW: Laden und Speichern von Icons (Icon Parser, für Icon Dateien oder Resourcen)

  Alt 6. Jan 2013, 19:33
Welche Werte müsste ich denn überprüfen? Ich steige durch deinen Code leider nicht wirklich durch.

[EDIT]
Ich habe mir mal die Werte für GroupHeader.idEntries[I].Width & GroupHeader.idEntries[I].Height in der SaveToResource-Funktion anzeigen lassen. Bei den Icons bis hin zu 48 x 48 Pixel stimmt der Wert. Beim 256 x 256 Pixel Icon werden wie schon im Screenshot zu sehen 13 x 0 Pixel angezeigt.

Geändert von ringli ( 6. Jan 2013 um 19:48 Uhr)
  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 23: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