DsUnquoteRdnValueA 函式 (dsparse.h)
DsUnquoteRdnValue 函式是用戶端呼叫,可將引號 RDN 值轉換回未加上引號的 RDN 值。 因為 RDN 原本是以引號括住,因為它包含在辨別名稱內嵌 (DN) 時可能會誤譯的字元,所以未加上引號的 RDN 值不應該提交為使用 LDAP 等各種 API 的目錄服務的一部分。
語法
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 值,並據以轉換。
- 逸出十六進位數位 (\89) 會轉換成二進位位元組 (0x89) 。
- 逸出會從逸出的特殊字元中移除。
- 逸出的特殊字元未逸出。
- 輸入和輸出 RDN 值不是 Null 終止的值。
注意
dsparse.h 標頭會將 DsUnquoteRdnValue 定義為別名,根據 UNICODE 預處理器常數的定義,自動選取此函式的 ANSI 或 Unicode 版本。 混合使用編碼中性別名與非編碼中性的程式碼,可能會導致編譯或執行時間錯誤不符。 如需詳細資訊,請參閱 函式原型的慣例。
需求
最低支援的用戶端 | Windows Vista |
最低支援的伺服器 | Windows Server 2008 |
目標平台 | Windows |
標頭 | dsparse.h (包含 Ntdsapi.h) |
程式庫 | Ntdsapi.lib |
Dll | Ntdsapi.dll |