AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Win32/Win64 API (native code) Delphi Standardicon für UNBEKANNTE Dateien...
Thema durchsuchen
Ansicht
Themen-Optionen

Standardicon für UNBEKANNTE Dateien...

Ein Thema von FriFra · begonnen am 17. Aug 2005 · letzter Beitrag vom 18. Aug 2005
Antwort Antwort
Olli
(Gast)

n/a Beiträge
 
#1

Re: Standardicon für UNBEKANNTE Dateien...

  Alt 18. Aug 2005, 13:22
Die Suche im Explorer hat leider nix ergeben, außer der Tatsache, daß dieser eine Imagelist aus Shell32 zu bekommen scheint ... und das war dann auch der Hinweis:
Im PSDK steht unter SHGetFileInfo():
Note Once you have a handle to a system image list, you can use the Image List API to manipulate it like any other image list. Because system image lists are created on a per-process basis, you should treat them as read-only objects. Writing to a system image list may overwrite or delete one of the system images, making it unavailable or incorrect for the remainder of the process.

Was lernen wir daraus? Richtig, es gibt eine "System Image List" (genaugenommen mindestens eine!).

Den "Namen" einer undokumentierten Funktion, welche nur über ihre Ordinal exportiert wird, MSDN-Library durchsuchenShell_GetImageLists() bekommen wir durch Vermutungen und Suche im PSDK ... wie wo watt? Ich kann hier einfach den Funktionsnamen angeben und außerdem verlinke ich MSDN?! Korrekt. Dank der Prozesse gegen MS haben die ja bekanntlich in den letzten Jahren einige Funktionen offengelegt.

Angeblich gibt es die erst ab XP, aber andere wissen da besseres zu berichten. Diese Funktion existiert bereits in Windows 95. Mit etwas weiterer Suche im PSDK finden wir dann ein Interface [msdn]IShellIcon::GetIconOf[/msdn], welches uns weitere Auskunft erteilt (nämlich zu den Indeces der Icons):
Zitat:
Address of the index of the icon in the system image list. The following standard image list indexes can be returned.
  • 0 Document (blank page, not associated)
  • 1 Document (with data on the page)
  • 2 Application (file extension must be .exe, .com, or .bat)
  • 3 Folder (plain)
  • 4 Folder (open)
Prinzipiell sollte damit die Frage geklärt sein. Die entsprechende Funktion dynamisch zu importieren solltest du ja draufhaben, FriFra. Ob man diese von Catch22 (der übrigens ein ähnliches, aber besseres, Tool wie EDA geschrieben hat) genannte Funktion FileIconInit() auf NT wirklich braucht, müßtest du dann selber austesten.

Hoppala, bei der nachträglichen Suche nach Bei Google suchenShell_GetImageLists Delphi kam nur ein einziger Treffer raus ... aber der hat's in sich. Wäre fast wert einen Hinweis darauf in die Codelib aufzunehmen:
http://www.whirlingdervishes.com/nse...les/source.php
  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 07:33 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