Shell Interfaces


IShellItem Interface

Exposes methods that retrieve information about a Shell item.

IShellItem Members

BindToHandler Binds to a handler for an item as specified by the handler ID value (BHID).
Compare Compares two IShellItem objects.
GetAttributes Gets a requested set of attributes of the IShellItem object.
GetDisplayName Gets the display name of the IShellItem object.
GetParent Gets the parent of an IShellItem object.

Interface Information

Minimum DLL Versionshell32.dll version 6.0 or later
Custom ImplementationNo
Inherits fromIUnknown
Headershobjidl.h
Minimum operating systems Windows XP Service Pack 1 (SP1)
Tags :


Community Content

Chris_Guzak
the system provides the implementation of IShellItem via CLSID_ShellItem
applications or shell data sources do not create objects that impement IShellitem; instead the system provides this.

this object can be created using SHCreateItemFromIDList() and SHCreateItemFromParsingName() or CoCreate of CLSID_ShellItem.
Tags :

Chris_Guzak
CLSID_ShellItem implements marshal by value

A shell item represents an absolute IDList in the bound state; that is it holds the data source instance object and child IDlist as members to perform its work.

Shellitem also implements marshal by value to enable the efficient use of these objects as interchange currency between COM apartments.
Tags :

Chris_Guzak
OS version information and APIs for creating items
IShellItem is the preferred way to consume the shell data model for applications that operate on XP SP1 or above.

Applications are encouraged to use IShellItem and IShellItem2 instead of IShellFolder and IDLists as the way to reason about shell data.

Below is a list of other functions that construct shell items from other currency, see those for the minimum platform that they require.

SHCreateShellItem
SHCreateItemFromIDList
SHCreateItemFromParsingName
SHCreateItemWithParent
SHCreateItemFromRelativeName
SHCreateItemInKnownFolder
SHGetItemFromObject
Tags : shell win32

Page view tracker