What Is PKEY_ThumbnailCacheId
In Vista and newer Windows operating systems you can implement a IPropertyStore interface for your Shell Namespace Extensions. One of the things that is asked of your items is what is their PKEY_ThumbnailCacheId. The PKEY_ThumbnailCacheId is used to determine if the Thumbnail image can be used from the thumbnail cache or if it has to be regenerated by the Shell. There is no documentation about: PKEY_ThumbnailCacheId. However in the propkey.h file in the Windows SDK it states: // Unique value that can be used as a key to cache thumbnails. // The value changes when the name, volume, or data modified // of an item changes. However, the return value of IPropertyStore::GetValue is a PROPVARIANT, which is much like a VARIANT, it can be almost anything. So what does the shell expect you to return from the GetValue method when it asks for PKEY_ThumbnailCacheId? A hint can be found in the definition of IThumbnailCache::GetThumbn...