StgMakeUniqueName 函数 (shlobj_core.h)

从模板为流或存储对象创建唯一名称。

语法

HRESULT StgMakeUniqueName(
  [in]  IStorage *pstgParent,
  [in]  PCWSTR   pszFileSpec,
  [in]  DWORD    grfMode,
  [in]  REFIID   riid,
  [out] void     **ppv
);

参数

[in] pstgParent

类型: IStorage*

指向 IStorage 对象的指针。

[in] pszFileSpec

类型: PCWSTR

流或存储对象名称的格式或模板。

[in] grfMode

类型:DWORD

打开流或存储对象时要使用的访问模式。 有关可能值的详细信息和说明,请参阅 STGM 常量。

[in] riid

类型: REFIID

对要通过 ppv 检索的接口的 IID 的引用,通常IID_IStorage或IID_IStream。

[out] ppv

类型: void**

此方法返回时,包含 riid 中请求的接口指针。 这通常是 IStorageIStream

返回值

类型: HRESULT

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

注解

建议使用 objbase.h 中定义的 IID_PPV_ARGS 宏来打包 riidppv 参数。 此宏基于 ppv 中值指向的接口提供正确的 IID,这消除了编码错误的可能性。

要求

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