IDataModelManager::UnregisterExtensionForTypeSignature 方法 (dbgmodel.h)

UnregisterExtensionForTypeSignature 方法撤消先前对 RegisterExtensionForTypeSignature 的调用。 它取消注册特定数据模型作为特定类型签名的扩展,或作为注册数据模型所针对的所有类型签名的扩展。

语法

HRESULT UnregisterExtensionForTypeSignature(
  IModelObject            *dataModel,
  IDebugHostTypeSignature *typeSignature
);

参数

dataModel

要从一个或多个类型签名中注销为扩展的数据模型。 如果在 typeSignature 参数中传递了特定类型签名,则此数据模型将从该特定类型签名中注销为扩展。 具有与签名匹配的具体类型的新创建的本机/语言对象将不再自动附加此数据模型。 如果 typeSignature 作为 nullptr 传递,则将从注册它所针对的每个类型签名中注销此数据模型。

typeSignature

应从中注销 dataModel 作为扩展的类型签名。 如果此参数为 nullptr,则 dataModel 参数提供的数据模型将从注册的每个类型签名中注销为扩展。

返回值

此方法返回指示成功或失败的 HRESULT。

注解

示例代码

ComPtr<IDataModelManager> spManager;             /* get the data model manager */
ComPtr<IDebugHostTypeSignature> spTypeSignature; /* get a type signature (see 
                                                  RegisterExtensionForTypeSignature) */
ComPtr<IModelObject> spDataModelObject;          /* get a data model object (see
                                                    CreateDataModelObject) */

if (SUCCEEDED(spManager->UnregisterExtensionForTypeSignature(spDataModelObject.Get(),
                                                             spTypeSignature.Get())))
{
    // spDataModelObject is no longer registered as an extension for types 
    // matching the signature.  Note that if the second argument were passed
    // as 'nullptr', spDataModelObject would no longer be registered as an
    // extension for *ANY* types.
}

要求

要求
Header dbgmodel.h

另请参阅

IDataModelManager 接口