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 を返します。 有効な値を次の表に示しますが、これ以外にもあります。
リターン コード | 説明 |
---|---|
|
メソッドが成功しました。 |
|
prefixes パラメーターは NULL です。 |
|
namespaces パラメーターは NULL です。 |
|
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 |
関連項目
概要
参照