SHPropStgCreate 函数 (shlobj_core.h)

[此函数可通过 Windows XP Service Pack 2 (SP2) 和 Windows Server 2003 获得。 在后续版本的 Windows 中,它可能已更改或不可用。]

确保正确处理所请求属性集操作的代码页检索或分配。

语法

SHSTDAPI SHPropStgCreate(
  [in]            IPropertySetStorage *psstg,
  [in]            REFFMTID            fmtid,
  [in, optional]  const CLSID         *pclsid,
                  DWORD               grfFlags,
                  DWORD               grfMode,
                  DWORD               dwDisposition,
  [out]           IPropertyStorage    **ppstg,
  [out, optional] UINT                *puCodePage
);

参数

[in] psstg

类型: IPropertySetStorage*

指向 IPropertySetStorage 接口的 指针。

[in] fmtid

类型: REFFMTID

属性设置要打开的 ID。 此参数的值可以是 预定义属性集格式标识符 中定义的值之一,也可以是注册的任何其他 FMTID。

[in, optional] pclsid

类型: const CLSID*

指向与集关联的 CLSID 的指针。 此参数可以为 NULL。

grfFlags

类型:DWORD

PROPSETFLAG 枚举的一个或多个成员,用于确定属性集的创建和打开方式。 应使用 PROPSETFLAG_ANSI 创建包含 ANSI 字节的所有集,否则PROPSETFLAG_DEFAULT。

grfMode

类型:DWORD

STGM 枚举中的标志,指示创建和删除对象的条件以及对象的访问模式。 必须包含STGM_DIRECT |STGM_SHARE_EXCLUSIVE。

dwDisposition

类型:DWORD

以下值之一,在 Fileapi.h 中定义。

CREATE_NEW (1)

如果尚不存在,请创建一个新集。

CREATE_ALWAYS (2)

始终创建新集,覆盖任何现有集。

OPEN_EXISTING (3)

打开现有集。

OPEN_ALWAYS (4)

[out] ppstg

类型: IPropertyStorage**

此方法返回时,包含 IPropertyStorage 接口指针。

[out, optional] puCodePage

类型: UINT*

此方法返回时,包含集的代码页 ID 的地址。

返回值

类型: HRESULT

如果此函数成功,则返回 S_OK。 否则,将返回 HRESULT 错误代码。

要求

要求
最低受支持的客户端 Windows 2000 Professional [仅限桌面应用]
最低受支持的服务器 Windows 2000 Server [仅限桌面应用]
目标平台 Windows
标头 shlobj_core.h
Library Shell32.lib
DLL Shell32.dll (版本 6.0 或更高版本)