IShellImageData::D ecode 方法 (shimgdata.h)

解码图像文件,设置状态。

语法

HRESULT Decode(
  [in] DWORD dwFlags,
  [in] ULONG cxDesired,
  [in] ULONG cyDesired
);

参数

[in] dwFlags

类型:DWORD

以下标志之一。

SHIMGDEC_DEFAULT (0x00)

创建完整映像。

SHIMGDEC_THUMBNAIL (0x01)

仅解码缩略图。

SHIMGDEC_LOADFULL (0x02)

将整个图像文件加载到内存中。

[in] cxDesired

类型: ULONG

解码图像的所需水平大小。 仅当设置了 SHIMGDEC_THUMBNAIL 标志时,才使用此参数。 如果改为设置 SHIMGDEC_DEFAULT 标志,则忽略此值。

[in] cyDesired

类型: ULONG

解码图像的所需垂直大小。 仅当设置了 SHIMGDEC_THUMBNAIL 标志时,才使用此参数。 如果改为设置 SHIMGDEC_DEFAULT 标志,则忽略此值。

返回值

类型: HRESULT

如果成功,则返回S_OK,否则返回错误值,包括以下内容:

返回代码 说明
E_FAIL
无法加载该文件,或者调用应用程序通过调用已注册的 IShellImageDataAbort 停止了解码过程 (请参阅 IShellImageData::RegisterAbort 了解) 的详细信息。
E_OUTOFMEMORY
无法实例化内部对象。
E_NOTIMPL
用于创建此 IShellImageData 实例的路径是 URL。
S_FALSE
图像已解码。

注解

在调用大多数 IShellImageData 方法之前,必须调用 IShellImageData::D ecode。 否则会导致这些方法失败。

IShellImageData::D ecode 尝试保持原始图像的纵横比,因此,在 cxDesiredcyDesired 中传递的值之一可能会被重写以执行此操作。

要求

要求
最低受支持的客户端 Windows XP [仅限桌面应用]
最低受支持的服务器 Windows Server 2003 [仅限桌面应用]
目标平台 Windows
标头 shimgdata.h
DLL Shell32.dll