다음을 통해 공유


IOpcDigitalSignature::GetNamespaces 메서드(msopc.h)

서명 태그의 Signature 요소에 대한 접두사 및 네임스페이스 매핑을 가져옵니다.

구문

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

매개 변수

[out] prefixes

XML 접두사 문자열의 버퍼에 대한 포인터입니다. 메서드가 성공하면 CoTaskMemFree 함수를 호출하여 버퍼에 있는 각 문자열의 메모리를 해제한 다음 버퍼 자체의 메모리를 해제합니다.

[out] namespaces

XML 네임스페이스 문자열의 버퍼에 대한 포인터입니다. 메서드가 성공하면 CoTaskMemFree 함수를 호출하여 버퍼에 있는 각 문자열의 메모리를 해제한 다음 버퍼 자체의 메모리를 해제합니다.

[out] count

접두사 및 네임스페이스 버퍼의 크기입니다.

반환 값

이 메서드는 HRESULT를 반환합니다. 가능한 값에는 다음 표에 있는 값이 포함되지만, 이에 국한되는 것은 아닙니다.

반환 코드 설명
S_OK
메서드가 성공했습니다.
E_POINTER
접두사 매개 변수는 NULL입니다.
E_POINTER
네임스페이스 매개 변수는 NULL입니다.
E_POINTER
count 매개 변수는 NULL입니다.

설명

접두사네임스페이스 버퍼는 인덱스를 통해 서로 매핑됩니다.

이 메서드는 접두 사 및 네임스페 이스에 반환된 버퍼와 각 버퍼에 포함된 문자열에 사용되는 메모리를 할당합니다.

예제

다음 코드에서는 CoTaskMemFree 를 사용하여 버퍼 및 포함된 문자열의 메모리를 해제하는 방법을 보여 줍니다.

// 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);
}

요구 사항

   
지원되는 최소 클라이언트 Windows 7 [데스크톱 앱만 해당]
지원되는 최소 서버 Windows Server 2008 R2 [데스크톱 앱만 해당]
대상 플랫폼 Windows
헤더 msopc.h

추가 정보

핵심 패키징 인터페이스

디지털 서명 개요

패키징 API를 사용하여 시작

IOpcDigitalSignature

개요

패키징 API 프로그래밍 가이드

패키징 API 참조

패키징 API 샘플

디지털 서명 인터페이스 패키징

패키징 인터페이스

참조