WPD Object Properties
Windows Portable Devices supports the following object properties.
|WPD_OBJECT_CONTAINER_FUNCTIONAL_OBJECT_ID||VT_LPWSTR||The object ID of the closest functional object containing this object. For example, a file inside a storage functional object will have this property set to the ID of the storage functional object.|
|WPD_OBJECT_CONTENT_TYPE||VT_CLSID||A GUID identifying the generic type of this object, for example, a document or e-mail. This can be an object type defined by Windows Portable Devices, or a custom driver content type. The device object is the only object that does not report this property.|
|WPD_OBJECT_DATE_AUTHORED||VT_DATE||Indicates the date and time that the content was created. This may not be the same as the creation date of the file. For example, a music file from would have an authoring date of when the music was recorded, but a creation date of when the WMA file was actually created on the device.|
|WPD_OBJECT_DATE_CREATED||VT_DATE||Indicates the date and time the object was created on the device.|
|WPD_OBJECT_DATE_MODIFIED||VT_DATE||Indicates the date and time the object was modified on the device.|
|WPD_OBJECT_FORMAT||VT_CLSID||A GUID identifying the format of the object data. This can be a format defined by Windows Portable Devices, or a custom driver format.|
|WPD_OBJECT_GENERATE_THUMBNAIL_FROM_RESOURCE||VT_BOOL||Indicates whether the thumbnail image for this object should be created from the default resource data.
This provides a way for objects without a thumbnail resource to provide a friendlier browsing experience. Using this flag may affect the first display response, since the application must retrieve and calculate a thumbnail image from the device; it is more efficient to provide a separate thumbnail image resource, if possible.
|WPD_OBJECT_ID||VT_LPWSTR||A string ID that uniquely identifies the object on the device. This ID need not be stored across sessions.
If this property is both unique and persistent, the driver may set both WPD_OBJECT_PERSISTENT_UNIQUE_ID and WPD_OBJECT_ID to the same value.
|WPD_OBJECT_IS_DRM_PROTECTED||VT_BOOL||Indicates whether the media data is DRM-protected. If not present, this is assumed to be False.|
|WPD_OBJECT_ISHIDDEN||VT_BOOL||Indicates whether the object should be hidden. If not present, the object is assumed to be not hidden.|
|WPD_OBJECT_CAN_DELETE||VT_BOOL||Indicates whether the object can be deleted, or not.|
|WPD_OBJECT_ISSYSTEM||VT_BOOL||Indicates whether the object represents system data (such as a system file). If not present, the object is assumed to be not a system object.|
|WPD_OBJECT_KEYWORDS||VT_LPWSTR||String containing a list of space-delimited keywords associated with this object.|
|WPD_OBJECT_NAME||VT_LPWSTR||The display name for the object.|
|WPD_OBJECT_NON_CONSUMABLE||VT_BOOL||Determines whether this object is intended to be understood or merely stored by the device. If this property is not present, all data is assumed to be intended for consumption.|
|WPD_OBJECT_ORIGINAL_FILE_NAME||VT_LPWSTR||A string name for the file.|
|WPD_OBJECT_PARENT_ID||VT_LPWSTR||The object ID of the parent object. The only object that can return an empty string for this value is the root device object.
To modify this property a client would call IPortableDevice::SendCommand(WPD_COMMAND_STORAGE_MOVE).
|WPD_OBJECT_PERSISTENT_UNIQUE_ID||VT_LPWSTR||A string ID that uniquely identifies the object on the device, similar to WPD_OBJECT_ID, but it must be stored across sessions.
If the object identifier WPD_OBJECT_ID is both unique and persistent, the driver may set both WPD_OBJECT_PERSISTENT_UNIQUE_ID and WPD_OBJECT_ID to the same value.
|WPD_OBJECT_REFERENCES||VT_UNKNOWN||An IPortableDevicePropVariantCollection containing a collection of VT_LPWSTR object IDs identifying the referenced objects. This is required only if the object is a reference object, such as a folder or playlist.|
|WPD_OBJECT_SIZE||VT_UI8||The size of the object resource data.|
|WPD_OBJECT_SYNC_ID||VT_LPWSTR||An opaque string created by a client to retain state between sessions without retaining a catalogue of connected device content.|