DsUnquoteRdnValueA 関数 (dsparse.h)
DsUnquoteRdnValue 関数は、引用符で囲まれた RDN 値を引用符で囲まれていない RDN 値に変換するクライアント呼び出しです。 RDN は、識別名 (DN) 内に埋め込まれたときに誤って解釈される可能性のある文字を含んでいたため、最初は引用符で囲まれなかったため、引用符なしの RDN 値は、LDAP などのさまざまな API を使用して DN の一部としてディレクトリ サービスに送信しないでください。
構文
DSPARSE DWORD DsUnquoteRdnValueA(
[in] DWORD cQuotedRdnValueLength,
[in] LPCCH psQuotedRdnValue,
[in, out] DWORD *pcUnquotedRdnValueLength,
[out] LPCH psUnquotedRdnValue
);
パラメーター
[in] cQuotedRdnValueLength
psQuotedRdnValue 文字列内の文字数。
[in] psQuotedRdnValue
引用符で囲んでエスケープできる RDN 値。
[in, out] pcUnquotedRdnValueLength
この引数の入力値は、psQuotedRdnValueの最大長
この引数の出力値には、次のフラグが含まれています。
ERROR_SUCCESS
これは、文字数が psQuotedRdnValueで使用される文字列
ERROR_BUFFER_OVERFLOW
これは、文字数が psQuotedRdnValueで使用される文字列
[out] psUnquotedRdnValue
引用符で囲まれていない変換された RDN 値。
戻り値
次の一覧には、DsUnquoteRdnValue 関数で返される可能性のある値が含まれています。
備考
psQuotedRdnValue が引用符で囲まれる場合:
- 先頭と末尾の引用符が削除されます。
- 最初の引用符が破棄される前の空白。
- 最後の引用符の末尾の空白は破棄されます。
- エスケープが削除され、エスケープの後の文字が保持されます。
- 先頭の空白は破棄されます。
- 末尾の空白は保持されます。
- エスケープされた特殊文字以外の文字はエラーを返します。
- エスケープされていない特殊文字はエラーを返します。
- #で始まる RDN 値 (先頭の空白を無視) は、以前に文字列に変換された BER 値として処理され、それに応じて変換されます。
- エスケープされた 16 進数 (\89) はバイナリ バイト (0x89) に変換されます。
- エスケープされた特殊文字からエスケープが削除されます。
- エスケープされた特殊文字はエスケープされません。
- 入力 RDN 値と出力 RDN 値は null で終わる値ではありません。
手記
dsparse.h ヘッダーは、Unicode プリプロセッサ定数の定義に基づいて、この関数の ANSI または Unicode バージョンを自動的に選択するエイリアスとして DsUnquoteRdnValue を定義します。 エンコードに依存しないエイリアスをエンコードに依存しないコードと組み合わせて使用すると、コンパイルエラーやランタイム エラーが発生する不一致が発生する可能性があります。 詳細については、「関数プロトタイプの 規則」を参照してください。
必要条件
要件 | 価値 |
---|---|
サポートされる最小クライアント | Windows Vista |
サポートされる最小サーバー | Windows Server 2008 |
ターゲット プラットフォーム の |
ウィンドウズ |
ヘッダー | dsparse.h (Ntdsapi.h を含む) |
ライブラリ | Ntdsapi.lib |
DLL | Ntdsapi.dll |