Condividi tramite


Funzione DsUnquoteRdnValueA (dsparse.h)

La funzione DsUnquoteRdnValue è una chiamata client che converte un valore RDN con virgolette in un valore RDN non quotato. Poiché la rete RDN è stata originariamente inserita in virgolette perché contiene caratteri che potrebbero essere interpretati erroneamente quando è stata incorporata all'interno di un nome distinto (DN), il valore RDN senza virgolette non deve essere inviato come parte di un DN al servizio directory usando varie API, ad esempio LDAP.

Sintassi

DSPARSE DWORD DsUnquoteRdnValueA(
  [in]      DWORD cQuotedRdnValueLength,
  [in]      LPCCH psQuotedRdnValue,
  [in, out] DWORD *pcUnquotedRdnValueLength,
  [out]     LPCH  psUnquotedRdnValue
);

Parametri

[in] cQuotedRdnValueLength

Numero di caratteri nella stringa psQuotedRdnValue .

[in] psQuotedRdnValue

Valore RDN che può essere citato e escape.

[in, out] pcUnquotedRdnValueLength

Il valore di input per questo argomento è la lunghezza massima, in caratteri, di psQuotedRdnValue.

Il valore di output per questo argomento include i flag seguenti.

ERROR_SUCCESS

Viene restituito se il numero di caratteri corrisponde alla stringa usata in psQuotedRdnValue.

ERROR_BUFFER_OVERFLOW

Viene restituito se il numero di caratteri non corrisponde alla stringa usata in psQuotedRdnValue.

[out] psUnquotedRdnValue

Valore RDN convertito e non quotato.

Valore restituito

L'elenco seguente contiene i valori possibili restituiti per la funzione DsUnquoteRdnValue .

Commenti

Quando psQuotedRdnValue viene citato:

  • Le virgolette iniziali e finali vengono rimosse.
  • Spazio vuoto prima dell'eliminazione della prima citazione.
  • Lo spazio vuoto finale dell'ultima citazione viene rimosso.
  • Le escape vengono rimosse e il carattere che segue l'escape viene mantenuto.
Le azioni seguenti vengono eseguite quando psQuotedRdnValue è unquoted :
  • Lo spazio vuoto iniziale viene rimosso.
  • Lo spazio vuoto finale viene mantenuto.
  • I caratteri non speciali di escape restituiscono un errore.
  • I caratteri speciali non distribuiti restituiscono un errore.
  • I valori RDN che iniziano con # (ignorando lo spazio vuoto iniziale) vengono gestiti come valore BER convertito in precedenza in una stringa e convertito di conseguenza.
  • Le cifre esadecimale escape (\89) vengono convertite in un byte binario (0x89).
  • Gli escape vengono rimossi da caratteri speciali di escape.
Le azioni seguenti vengono sempre eseguite:
  • I caratteri speciali di escape non vengono visualizzati.
  • I valori RDN di input e output non sono valori con terminazione null.

Nota

L'intestazione dsparse.h definisce DsUnquoteRdnValue come alias che seleziona automaticamente la versione ANSI o Unicode di questa funzione in base alla definizione della costante preprocessore UNICODE. La combinazione dell'utilizzo dell'alias di codifica neutrale con il codice che non è neutrale dalla codifica può causare errori di corrispondenza che causano errori di compilazione o runtime. Per altre informazioni, vedere Convenzioni per i prototipi di funzione.

Requisiti

   
Client minimo supportato Windows Vista
Server minimo supportato Windows Server 2008
Piattaforma di destinazione Windows
Intestazione dsparse.h (include Ntdsapi.h)
Libreria Ntdsapi.lib
DLL Ntdsapi.dll

Vedi anche

Funzioni di gestione del controller di dominio e della replica

DsQuoteRdnValue