SHGetItemFromDataObject function (shobjidl_core.h)
Creates an IShellItem or related object based on an item specified by an IDataObject.
Syntax
HRESULT SHGetItemFromDataObject(
[in] IDataObject *pdtobj,
[in] DATAOBJ_GET_ITEM_FLAGS dwFlags,
[in] REFIID riid,
[out] void **ppv
);
Parameters
[in] pdtobj
Type: IDataObject*
A pointer to the source IDataObject instance.
[in] dwFlags
Type: DATAOBJ_GET_ITEM_FLAGS
One or more values from the DATAOBJ_GET_ITEM_FLAGS enumeration to specify options regarding the target object. This value can be 0.
[in] riid
Type: REFIID
A reference to the IID of the interface to retrieve through ppv, typically IID_IShellItem.
[out] ppv
Type: void**
When this method returns, contains the interface pointer requested in riid. This is typically IShellItem.
Return value
Type: HRESULT
If this function succeeds, it returns S_OK. Otherwise, it returns an HRESULT error code.
Remarks
It is recommended that you use the IID_PPV_ARGS macro, defined in Objbase.h, to package the riid and ppv parameters. This macro provides the correct IID based on the interface pointed to by the value in ppv, which eliminates the possibility of a coding error.
Requirements
Requirement | Value |
---|---|
Minimum supported client | Windows 7 [desktop apps only] |
Minimum supported server | Windows Server 2008 R2 [desktop apps only] |
Target Platform | Windows |
Header | shobjidl_core.h (include Shobjidl.h) |
DLL | Shell32.dll (version 6.1 or later) |