shell icon
-
Hi,
Ich habe einen Dateinamen.Wie bekomme ich das icon dazu, was auch der explorer anzeigen würde?
(Also das, der zugehörigen Anwendung, oder in Falle einer Verknüpfung oder Exe das zugehörige)
-
Hi,
mal salopp geantwortet:
Das ist immer die erste Icon-Resource in der Datei. Ist da keine, wird ein default Icon angezeigt.
Die Resource-Api ist gut dokumentiert.
-
ich bin mir sicher, dass es da eine api oder SHxx-funktion gab, kanns leider nicht finden.
mir geht es ja darum, das icon zu bekommen, was im explorer dargestellt werden würde.
-
versuch es mal mit...
für Datei icon
SHFILEINFO sfi; UINT uiFlags = SHGFI_ICON | SHGFI_USEFILEATTRIBUTES; uiFlags |= (bIconSize ? SHGFI_LARGEICON : SHGFI_SMALLICON); SHGetFileInfo(szFileName, FILE_ATTRIBUTE_NORMAL,&sfi, sizeof(SHFILEINFO),uiFlags); return sfi.hIcon;oder
für ordner
SHFILEINFO sfi; UINT uiFlags = SHGFI_ICON | SHGFI_USEFILEATTRIBUTES; uiFlags |= (bIconSize ? SHGFI_LARGEICON : SHGFI_SMALLICON); SHGetFileInfo(szFileName, FILE_ATTRIBUTE_DIRECTORY,&sfi, sizeof(SHFILEINFO),uiFlags); return sfi.hIcon;
-
Jau, danke, das hatte ich gesucht.