Compartir a través de


Método IOpcDigitalSignature::GetNamespaces (msopc.h)

Obtiene la asignación de prefijo y espacio de nombres del elemento Signature del marcado de firma.

Sintaxis

HRESULT GetNamespaces(
  [out] LPWSTR **prefixes,
  [out] LPWSTR **namespaces,
  [out] UINT32 *count
);

Parámetros

[out] prefixes

Puntero a un búfer de cadenas de prefijo XML. Si el método se realiza correctamente, llame a la función CoTaskMemFree para liberar la memoria de cada cadena del búfer y, a continuación, liberar la memoria del propio búfer.

[out] namespaces

Puntero a un búfer de cadenas de espacio de nombres XML. Si el método se realiza correctamente, llame a la función CoTaskMemFree para liberar la memoria de cada cadena del búfer y, a continuación, liberar la memoria del propio búfer.

[out] count

Tamaño de los prefijos y espacios de nombres búferes .

Valor devuelto

El método devuelve un valor HRESULT. Entre los valores posibles se incluyen los que se indican en la tabla siguiente, entre otros.

Código devuelto Descripción
S_OK
El método se ha llevado a cabo de forma correcta.
E_POINTER
El parámetro prefijos es NULL.
E_POINTER
El parámetro namespaces es NULL.
E_POINTER
El parámetro count es NULL.

Comentarios

Los prefijos y los espacios de nombres se asignan entre sí por índice.

Este método asigna memoria utilizada por los búferes devueltos en prefijos y espacios de nombres y las cadenas contenidas en cada búfer.

Ejemplos

El código siguiente muestra cómo usar CoTaskMemFree para liberar la memoria de los búferes y las cadenas que contienen.

// Prepare to call GetNamespaces
LPWSTR* prefixes = NULL;
LPWSTR* namespaces = NULL;
UINT32 count = 0;

// Call to GetNamespaces succeeds
if ( SUCCEEDED( signature->GetNamespaces(&prefixes, &namespaces, &count) ) )
{
    // Process strings in prefixes and namespaces as needed for the application

    // Free memory for each string
    for (UINT32 i = 0; i < count; i++)
    {
        CoTaskMemFree(prefixes[i]);
        CoTaskMemFree(namespaces[i]);
    }
    // Free memory for the buffers
    CoTaskMemFree(prefixes);
    CoTaskMemFree(namespaces);
}

Requisitos

   
Cliente mínimo compatible Windows 7 [solo aplicaciones de escritorio]
Servidor mínimo compatible Windows Server 2008 R2 [solo aplicaciones de escritorio]
Plataforma de destino Windows
Encabezado msopc.h

Consulte también

Interfaces de empaquetado principal

Información general sobre firmas digitales

Introducción con la API de empaquetado

IOpcDigitalSignature

Temas de introducción

Guía de programación de API de empaquetado

Referencia de API de empaquetado

Ejemplos de API de empaquetado

Empaquetado de interfaces de firma digital

Interfaces de empaquetado

Referencia