AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren

ExtractIcon

Ein Thema von taaktaak · begonnen am 3. Mai 2012 · letzter Beitrag vom 4. Mai 2012
Antwort Antwort
taaktaak

Registriert seit: 25. Okt 2007
Ort: Radbruch
1.990 Beiträge
 
Delphi 7 Professional
 
#1

ExtractIcon

  Alt 3. Mai 2012, 09:47
Moin, Moin.
Mit ExtractIcon kann die Anzahl der in einer dll enthaltenen Icons ermittelt werden:

IconCount:=ExtractIcon(Application.Handle,PChar(FName),UInt(-1)); Bei der dll "hpgt3800" wird als Ergebnis der Wert 49087 ermittelt, laden kann man aus dieser dll kein einziges Icon. Mache ich da etwas falsch? Gibt es vielleicht eine Obergrenze, ab der das Ergebnis unberücksichtigt werden kann/muss? Oder muss man damit leben, dass man bei einem Ergebnis ab z.B. 100 prüft, ob ein Icon geladen werden kann...
Ralph
  Mit Zitat antworten Zitat
Benutzerbild von Zacherl
Zacherl

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

AW: ExtractIcon

  Alt 3. Mai 2012, 12:02
Ist die Dll eventuell gepackt / protected?
Projekte:
- GitHub (Profil, zyantific)
- zYan Disassembler Engine ( Zydis Online, Zydis GitHub)
  Mit Zitat antworten Zitat
taaktaak

Registriert seit: 25. Okt 2007
Ort: Radbruch
1.990 Beiträge
 
Delphi 7 Professional
 
#3

AW: ExtractIcon

  Alt 3. Mai 2012, 13:04
Tja, einen Schreibschutz hat die dll (von Hewlett-Packard) nicht. Ob diese gepackt ist, entzieht sich meiner Kenntnis. Ich will aus dieser dll auch keine Icons extrahieren. Es geht hier nur ums Prinzip, dass beim Verzeichnis-Scan diese dll laut ExtractIcon() sehr viele Icons enthält, diese aber offenbar gar nicht verfügbar sind.
Ralph
  Mit Zitat antworten Zitat
Benutzerbild von Zacherl
Zacherl

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

AW: ExtractIcon

  Alt 3. Mai 2012, 13:46
Die API kommt wohl mit der Datei aus irgendeinem Grund nicht zurecht. PE Packer / Protectoren haben manchmal die Angewohnheit, sowas zu verursachen. Könntest du mal mit PEID untersuchen.
Projekte:
- GitHub (Profil, zyantific)
- zYan Disassembler Engine ( Zydis Online, Zydis GitHub)
  Mit Zitat antworten Zitat
Steku

Registriert seit: 12. Mai 2008
181 Beiträge
 
Delphi 10.2 Tokyo Starter
 
#5

AW: ExtractIcon

  Alt 3. Mai 2012, 14:12
hi,

ich würde mal versuchen, ob es die üblichen Verdächtigen bei den
Extract-Tools schaffen, die Icons anzuzeigen, bzw. zu extrahieren.

Evtl. kannst du dir mal den XN Resource Editor von Colin Wilson anschauen.
Wenn der damit klar kommt, kannst du ja mal einen Blick in den Source werfen.

http://www.wilsonc.demon.co.uk/d10resourceeditor.htm

Gruß
Steku
  Mit Zitat antworten Zitat
taaktaak

Registriert seit: 25. Okt 2007
Ort: Radbruch
1.990 Beiträge
 
Delphi 7 Professional
 
#6

AW: ExtractIcon

  Alt 3. Mai 2012, 14:28
Vielen Dank für die Hinweise, werde ich mal in Ruhe überprüfen.
Ralph
  Mit Zitat antworten Zitat
taaktaak

Registriert seit: 25. Okt 2007
Ort: Radbruch
1.990 Beiträge
 
Delphi 7 Professional
 
#7

AW: ExtractIcon

  Alt 4. Mai 2012, 10:12
Moin, Moin.
So, habe es überprüft: Der XN Resource Editor findet in der benannten "Problem-DLL" keine Icons. Verwende nun folgende Logik: Ermittelt ExtractIcon() eine IconAnzahl>0, wird - sofern die Datei eine DLL ist - versucht das Handle des ersten Icons mit ExtractIcon() zu bestimmen. Konnte das Handle nicht ermittelt werden, wird die DLL nicht in die Ergebnismenge des Scans aufgenommen.
Das erscheint mir eine praktikable Lösung zu sein, die zudem keine messbare zusätzliche Zeit kostet...
Ralph
  Mit Zitat antworten Zitat
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

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 15:40 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