IDataModelManager::UnregisterExtensionForTypeSignature メソッド (dbgmodel.h)

UnregisterExtensionForTypeSignature メソッドは、RegisterExtensionForTypeSignature の以前の呼び出しを元に戻します。 特定のデータ モデルを、特定の型シグネチャの拡張機能として、またはデータ モデルが登録されたすべての型シグネチャの拡張機能として登録解除します。

構文

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

パラメーター

dataModel

1 つ以上の型シグネチャから拡張機能として登録を解除するデータ モデル。 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 インターフェイス