![]() |
Shell ILCombine Function
Liste der Anhänge anzeigen (Anzahl: 1)
Mit der Shellfunktion
![]() Mein Tree basiert auf dem Treeview Sample von Matthias Simmack in Luckies WinAPI Tutorial. Ich verwende folgende Routinen:
Delphi-Quellcode:
constructor TFolderId.Create(const hTvw: HWND; hParent: HTREEITEM; iFolder: IShellFolder; pidlNode: PItemIdList);
var Item : TTVItemW; fid : TFolderId; begin FFolder := iFolder; FPIDL_REL := CopyPIDL(pidlNode); if hParent <> nil then begin Item.mask := TVIF_HANDLE or TVIF_PARAM; Item.hItem := hParent; TreeView_GetItemW(hTvw, Item); fid := TFolderId(Item.lParam); FPIDL_ABS := ILCombine(fid.FPIDL_ABS, pidlNode); end else FPIDL_ABS := CopyPIDL(pidlNode); end;
Delphi-Quellcode:
Die Funktion soll seit Win 2000 Prof bzw Server mit Shell32.dll Version 5.0 existieren. Auf meinem Win XP SP 3 funktioniert es, in der Firma auf einem Rechner mit Win XP SP 2 (shell32.dll v6.0.2900.3402) jedoch nicht. Könnt Ihr mal sehen, wie es bei Euch aussieht!?
function GetSHImage(const pidl: PItemIdList; fOpen: boolean): integer;
var Flags : DWord; FileInfo : TSHFileInfoW; begin if fOpen then Flags := SHGFI_PIDL or SHGFI_SYSICONINDEX or SHGFI_OPENICON else Flags := SHGFI_PIDL or SHGFI_SYSICONINDEX; if Succeeded(SHGetFileInfoW(Pchar(pidl), 0, FileInfo, sizeof(FileInfo), Flags)) then Result := FileInfo.iIcon else Result := -1; end; |
Re: Shell ILCombine Function
Asche auf mein Haupt. Der Fehler lag an einer anderen Stelle.
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 22:43 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