次の方法で共有


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 が引用符で囲まれる場合:

  • 先頭と末尾の引用符が削除されます。
  • 最初の引用符が破棄される前の空白。
  • 最後の引用符の末尾の空白は破棄されます。
  • エスケープが削除され、エスケープの後の文字が保持されます。
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

関連項目

ドメイン コントローラーとレプリケーション管理機能の

DsQuoteRdnValue