Compartir a través de


Método IDebugHostSymbols::CreateModuleSignature (dbgmodel.h)

El método CreateModuleSignature crea una firma que se puede usar para que coincida con un conjunto de módulos específicos por nombre y, opcionalmente, por versión. Hay tres componentes en una firma de módulo:

  • Un nombre: un módulo coincidente debe tener un nombre que sea una coincidencia exacta que no distingue mayúsculas de minúsculas con el nombre de la firma.

  • Una versión mínima: si se especifica, un módulo coincidente debe tener una versión mínima que sea al menos tan alta como esta versión. Las versiones se especifican en formato "A.B.C.D" y cada parte posterior es menos importante que la anterior. Solo el primer segmento es obligatorio.

  • Una versión máxima: si se especifica, un módulo coincidente debe tener una versión máxima que no sea superior a esta versión. Las versiones se especifican en formato "A.B.C.D" y cada parte posterior es menos importante que la anterior. Solo el primer segmento es obligatorio.

Sintaxis

HRESULT CreateModuleSignature(
  PCWSTR                    pwszModuleName,
  PCWSTR                    pwszMinVersion,
  PCWSTR                    pwszMaxVersion,
  IDebugHostModuleSignature **ppModuleSignature
);

Parámetros

pwszModuleName

Nombre que debe tener un módulo para que coincida con la firma (sin distinción entre mayúsculas y minúsculas).

pwszMinVersion

Versión mínima que debe tener un módulo para que coincida con la firma. Si este argumento es nullptr, no se requiere ninguna versión mínima para que coincida con la firma. Las versiones se especifican como cadenas en formato "A.B.C.D" y solo se requiere el primer componente y los componentes posteriores son menos importantes.

pwszMaxVersion

La versión máxima que puede tener un módulo para que coincida con la firma. Si este argumento es nullptr, no hay ningún límite superior en el número de versión necesario para que coincida con la firma. Las versiones se especifican como cadenas en formato "A.B.C.D" y solo se requiere el primer componente y los componentes posteriores son menos importantes.

ppModuleSignature

El objeto de firma del módulo creado se devuelve aquí.

Valor devuelto

Este método devuelve HRESULT que indica éxito o error.

Comentarios

Código de ejemplo

ComPtr<IDebugHost> spHost; /* get the host */

ComPtr<IDebugHostSymbols> spSym;
if (SUCCEEDED(spHost.As(&spSym)))
{
    ComPtr<IDebugHostModuleSignature> spBasicSignature;
    if (SUCCEEDED(spSym->CreateModuleSignature(
        L"Windows.UI.Xaml.dll", 
        nullptr, 
        nullptr, 
        &spBasicSignature)))
    {
        // spBasicSignature is a signature which will match any module 
        // named "Windows.UI.Xaml.dll" regardless of version.
    }

    ComPtr<IDebugHostModuleSignature> spVersionedSignature;
    if (SUCCEEDED(spSym->CreateModuleSignature(
        L"Windows.UI.Xaml.dll", 
        "6.3", 
        "10.0.0.0", 
        &spVersionedSignature)))
    {
        // spVersionedSignature is a signature which will match a module named
        // "Windows.UI.Xaml.dll" whose version is >= 6.3(.0.0) and whose 
        // version <= 10.0.0.0
    }
}

Requisitos

Requisito Valor
Header dbgmodel.h

Consulte también

Interfaz IDebugHostSymbols