Funzione DsCrackSpnA (dsparse.h)

La funzione DsCrackSpn analizza un nome dell'entità servizio (SPN) nelle stringhe del componente.

Sintassi

DSPARSE DWORD DsCrackSpnA(
  [in]                LPCSTR  pszSpn,
  [in, out, optional] LPDWORD pcServiceClass,
  [out, optional]     LPSTR   ServiceClass,
  [in, out, optional] LPDWORD pcServiceName,
  [out, optional]     LPSTR   ServiceName,
  [in, out, optional] LPDWORD pcInstanceName,
  [out, optional]     LPSTR   InstanceName,
  [out, optional]     USHORT  *pInstancePort
);

Parametri

[in] pszSpn

Puntatore a una stringa con terminazione Null costante contenente il nome SPN da analizzare. Il> nome SPN ha il formato seguente, in cui devono essere presenti i componenti> e <nome dell'istanza <e il numero di porta <> e <nome del servizio> componenti sono facoltativi. Il <numero di porta> componente deve essere un valore stringa numerico.

<service class>/<instance name>:<port number>/<service name>

[in, out, optional] pcServiceClass

Puntatore a un valore DWORD che, nella voce, contiene le dimensioni, in TCHAR, del buffer ServiceClass , incluso il carattere Null di terminazione. All'uscita, questo parametro contiene il numero di TCHAR nella stringa ServiceClass , incluso il carattere Null di terminazione.

Se questo parametro è NULL, contiene zero o ServiceClass è NULL, questo parametro e ServiceClass vengono ignorati.

Per ottenere il numero di caratteri necessari per la stringa ServiceClass, incluso il carattere di terminazione Null, chiamare questa funzione con un nome SPN valido, unNULLServiceClass e questo parametro impostato su 1.

[out, optional] ServiceClass

Puntatore a un buffer di TCHAR che riceve una stringa con terminazione Null contenente la classe del servizio componente del nome SPN. Questo buffer deve essere almeno *pcServiceClass TCHAR dimensioni. Questo parametro può essere null se la classe del servizio non è necessaria.

[in, out, optional] pcServiceName

Puntatore a un valore DWORD che, nella voce, contiene le dimensioni, in TCHAR, del buffer ServiceName , incluso il carattere Null di terminazione. All'uscita, questo parametro contiene il numero di TCHAR nella stringa ServiceName , incluso il carattere Null di terminazione.

Se questo parametro è NULL, contiene zero o ServiceName è null, questo parametro e ServiceName vengono ignorati.

Per ottenere il numero di caratteri necessari per la stringa NomeServizio, incluso il carattere di terminazione Null, chiamare questa funzione con un nome SPN valido, unNULLServiceName e questo parametro impostato su 1.

[out, optional] ServiceName

Puntatore a un buffer di TCHAR che riceve una stringa con terminazione Null contenente il nome del servizio componente del nome spN. Questo buffer deve essere almeno *pcServiceName TCHARs dimensioni. Se il nome del servizio <> componente non è presente nel nome SPN, questo buffer riceve il nome dell'istanza <> componente. Questo parametro può essere NULL se il nome del servizio non è obbligatorio.

[in, out, optional] pcInstanceName

Puntatore a un valore DWORD che, nella voce, contiene le dimensioni, in TCHARs, del buffer instanceName , incluso il carattere Null di terminazione. All'uscita, questo parametro contiene il numero di TCHAR nella stringa InstanceName, incluso il carattere Null di terminazione.

Se questo parametro è null, contiene zero o instanceName è null, questo parametro e InstanceName vengono ignorati.

Per ottenere il numero di caratteri necessari per la stringa InstanceName, incluso il carattere di terminazione Null, chiamare questa funzione con un nome SPN valido, unNULLInstanceName e questo parametro impostato su 1.

[out, optional] InstanceName

Puntatore a un buffer di TCHAR che riceve una stringa con terminazione Null contenente il nome dell'istanza componente del nome dell'istanza spn. Questo buffer deve essere almeno *pcInstanceName TCHARs dimensioni. Questo parametro può essere null se il nome dell'istanza non è obbligatorio.

[out, optional] pInstancePort

Puntatore a un valore DWORD che riceve il valore intero del numero di porta componente del nome SPN. Se il nome SPN non contiene un <numero di porta> componente, questo parametro riceve zero. Questo parametro può essere null se il numero di porta non è obbligatorio.

Valore restituito

Restituisce un codice di errore Win32, incluso quanto segue.

Osservazioni

Nota

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

Fabbisogno

Requisito Valore
client minimo supportato Windows Vista
server minimo supportato Windows Server 2008
piattaforma di destinazione Finestre
intestazione dsparse.h (include Ntdsapi.h)
libreria Ntdsapi.lib
dll Ntdsapi.dll

Vedere anche

controller di dominio e funzioni di gestione della replica