IWMDMStorage4::FindStorage
The FindStorage method finds the storage based on the persistent unique identifier of the storage.
Syntax
HRESULT FindStorage(
WMDM_FIND_SCOPE findScope,
LPCWSTR pwszUniqueID,
IWMDMStorage** ppStorage
);
Parameters
findScope
[in] Scope of the search. Valid values are defined in the following table.
Value | Description |
WMDM_FIND_SCOPE_GLOBAL | Search the whole device. |
WMDM_FIND_SCOPE_IMMEDIATE_CHILDREN | Search only within the immediate children of the current storage. |
pwszUniqueID
[in] Persistent unique identifier of the storage to be found. The persistent unique identifier of the storage is described by the g_wszWMDMPersistentUniqueID property of the storage.
ppStorage
[out] Pointer to the returned storage object specified by the pwszUniqueID parameter.
Return Values
The method returns an HRESULT. All the interface methods in Windows Media Device Manager and service provider can return any of the following classes of error codes:
- Standard COM error codes
- Windows error codes converted to HRESULT values
- Windows Media Device Manager error codes
For a complete list of possible error codes, see Error Codes.
Possible values include, but are not limited to, those in the following table. If the method fails with an error, it returns a standard error code.
Return code | Description |
S_OK | The method succeeded and storage matching the persistent unique identifier was found. |
E_INVALIDARG | The findScope is not valid, or pwszUniqueID or ppStorage is NULL. |
HRESULT_FROM_WIN32(ERROR_NOT_FOUND) | No storage found with the specified persistent unique identifier. |
Remarks
A persistent unique identifier identifies content stored on a particular device. It does not represent a content-specific globally unique identifier that remains identical across all devices. Thus, the same content stored in different storages will have different persistent unique identifiers. Similarly, different content may have the same persistent unique identifier when stored on different devices.
The format of the persistent unique identifier depends on the device. The application should have obtained the persistent unique identifier by querying the WMDM/PersistentUniqueID property of the storage. The application can use the GetSpecifiedMetadata or GetMetadata methods to query this property.
Requirements
Header: Defined in wmdm.idl.
Library: mssachlp.lib
See Also