IPropertyStorage::SetClass 方法 (propidlbase.h)

SetClass 方法将新的 CLSID 分配给当前属性存储对象,并将 CLSID 与 对象一起持久存储。

语法

HRESULT SetClass(
  [in] REFCLSID clsid
);

参数

[in] clsid

要与属性集关联的新 CLSID。

返回值

除以下项外,此方法还支持标准返回值E_UNEXPECTED:

注解

将 CLSID 分配给当前属性存储对象。 CLSID 与存储的属性 ID 没有关系。 分配 CLSID 允许将一段代码与属性集的给定实例相关联;例如,此类代码可能会管理用户界面 (UI) 。 不同的 CLSID 可以与具有相同 FMTID 的不同属性集实例相关联。

如果使用指定为 NULLIPropertySetStorage::Create 方法的 pclsid 参数创建属性集,则 CLSID 设置为所有零。

可以通过调用 IPropertyStorage::Stat 来检索属性存储对象上的当前 CLSID。可以在使用调用 IPropertySetStorage::Create 创建存储时指定 CLSID 的初始值。

在非简单属性集上设置 CLSID (可合法包含存储或流值属性集,如 IPropertySetStorage::Create) 还会在基础子存储上设置 CLSID。

要求

要求
最低受支持的客户端 Windows 2000 专业版 [桌面应用 |UWP 应用]
最低受支持的服务器 Windows 2000 Server [桌面应用 |UWP 应用]
目标平台 Windows
标头 propidlbase.h (包括 Objbase.h、Propidlbase.h)
Library Uuid.lib
DLL Ole32.dll

另请参阅

IPropertySetStorage::Create

IPropertyStorage

IPropertyStorage::Stat