IThumbnailCache::GetThumbnail 方法 (thumbcache.h)
取得指定殼層專案的快取縮圖。
語法
HRESULT GetThumbnail(
[in] IShellItem *pShellItem,
[in] UINT cxyRequestedThumbSize,
[in] WTS_FLAGS flags,
[out, optional] ISharedBitmap **ppvThumb,
[out, optional] WTS_CACHEFLAGS *pOutFlags,
[out, optional] WTS_THUMBNAILID *pThumbnailID
);
參數
[in] pShellItem
類型: IShellItem*
要擷取縮圖之Shell專案的指標。
[in] cxyRequestedThumbSize
類型: UINT
要求的縮圖大小,以像素為單位。 最大值為 1024。
[in] flags
類型: WTS_FLAGS
來自 WTS_FLAGS 列舉的值組合。 如需規則和可能的組合清單,請參閱一節。
[out, optional] ppvThumb
類型: ISharedBitmap**
當此方法成功傳回時, ISharedBitmap 指標的位址會接收用來存取縮圖的物件。 此參數可以是 NULL。
[out, optional] pOutFlags
類型: WTS_CACHEFLAGS*
值指標,當這個方法成功傳回時,會從WTS_CACHEFLAGS列舉接收下列旗標的組合。
WTS_DEFAULT (0x00000000)
0x00000000。
WTS_LOWQUALITY (0x00000001)
0x00000001。 設定傳回的位圖維度小於 cxyRequestedThumbSize 時。
WTS_CACHED (0x00000002)
0x00000002。 設定傳回的映像在快取中時。
[out, optional] pThumbnailID
類型: WTS_THUMBNAILID*
值指標,當這個方法成功傳回時,會收到所傳回縮圖的唯一標識符。 此參數可能是 NULL,在此情況下會捨棄縮圖標識碼。
傳回值
類型: HRESULT
如果成功或標準 COM 錯誤值,則傳回S_OK,包括下列專案:
傳回碼 | Description |
---|---|
|
有一個參數無效。 |
|
Shell 專案不支援縮圖擷取。 例如,.exe 或.lnk專案。 |
|
擷取所花費的時間超過允許時間上限。 未完成擷取。 |
|
代理進程無法用於擷取程式。 |
|
已設定WTS_FASTEXTRACT旗標,但無法使用快速擷取。 |
備註
如果擷取縮圖,除非指定了WTS_EXTRACTDONOTCACHE,否則將會快取該縮圖。
下列組合對 flags 參數有效。
WTS_INCACHEONLY |
WTS_FASTEXTRACT |
WTS_EXTRACT |
WTS_EXTRACT |WTS_SLOWRECLAIM |
WTS_FORCEEXTRACTION |
WTS_FORCEEXTRACTION |WTS_SLOWRECLAIM |
WTS_EXTRACTDONOTCACHE |
GetImage 也會使用此快取,並提供更簡單的方式來擷取縮圖。 不過, GetImage 較一般,而且會擷取圖示做為後援。
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 | Windows Vista [僅限傳統型應用程式] |
最低支援的伺服器 | Windows Server 2008 [僅限傳統型應用程式] |
目標平台 | Windows |
標頭 | thumbcache.h |