ITransferSource::OpenItem method (shobjidl_core.h)
Opens the item for copying. Returns an object that can be enumerated for resources (IShellItemResources).
Syntax
HRESULT OpenItem(
[in] IShellItem *psi,
[in] TRANSFER_SOURCE_FLAGS flags,
[out] REFIID riid,
[out] void **ppv
);
Parameters
[in] psi
Type: IShellItem*
A pointer to the IShellItem to be opened.
[in] flags
Type: TRANSFER_SOURCE_FLAGS
The flags that control the file operation. One or more of the TRANSFER_SOURCE_FLAGS constants.
[out] riid
Type: REFIID
A reference to the IID (the interface ID or GUID) of the interface to return in ppv. This should be an IShellItemResources or an interface derived from IShellItemResources.
[out] ppv
Type: void**
When this method returns, contains the address of a pointer to the interface specified by riid.
Return value
Type: HRESULT
Returns S_OK if successful, or one of the following specific Shell codes, or a system error code.
Return code | Description |
---|---|
|
User responded "Yes" to the dialog. |
|
User responded to retry the current action. |
|
User responded "No" to the dialog. |
|
User responded to merge folders. |
|
User responded to retry the file with new name. |
|
Child items should not be processed. |
|
Error has been queued and will display later. |
|
User canceled the current action. |
|
Operation requires elevated privileges. |
Requirements
Requirement | Value |
---|---|
Minimum supported client | Windows Vista [desktop apps only] |
Minimum supported server | Windows Server 2008 [desktop apps only] |
Target Platform | Windows |
Header | shobjidl_core.h (include Shobjidl.h) |