Funzione CredMarshalCredentialA (wincred.h)
La funzione CredMarshalCredential trasforma una credenziale in una stringa di testo. Storicamente, molte funzioni, ad esempio NetUseAdd, accettano un nome di dominio, un nome utente e una password come credenziali. Queste funzioni non accettano certificati come credenziali. La funzione CredMarshalCredential
Le credenziali di cui è stato eseguito il marshalling devono essere passate come stringa di nome utente a qualsiasi API attualmente passata. Il nome di dominio, se applicabile, passato a tale API deve essere passato come null o vuoto. Per le credenziali del certificato, il PIN del certificato deve essere passato all'API come password.
Il chiamante non deve modificare o stampare le credenziali con marshalling. Il valore restituito può essere convertito liberamente tra i set di caratteri Unicode, ANSI e OEM. La stringa fa distinzione tra maiuscole e minuscole.
Sintassi
BOOL CredMarshalCredentialA(
[in] CRED_MARSHAL_TYPE CredType,
[in] PVOID Credential,
[out] LPSTR *MarshaledCredential
);
Parametri
[in] CredType
Tipo di credenziale di cui effettuare il marshalling.
[in] Credential
Credenziali da sottoporre a marshalling.
Si tratta di uno dei valori CRED_MARSHAL_TYPE.
Se CredType è CertCredential, Credential punta a una struttura di CERT_CREDENTIAL_INFO.
Se CredType è UsernameTargetCredential, Credential punta a una struttura di USERNAME_TARGET_CREDENTIAL_INFO.
[out] MarshaledCredential
Puntatore a un nullstringa con terminazione contenente le credenziali con marshalling. Il chiamante deve liberare il buffer restituito usando CredFree.
Valore restituito
Questa funzione restituisce TRUE in caso di esito positivo e FALSE in caso di errore. È possibile chiamare la funzione GetLastError
ERROR_INVALID_PARAMETER
CredType non è valido.
Osservazioni
Nota
L'intestazione wincred.h definisce CredMarshalCredential 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 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 XP [solo app desktop] |
server minimo supportato | Windows Server 2003 [solo app desktop] |
piattaforma di destinazione | Finestre |
intestazione |
wincred.h |
libreria |
Advapi32.lib |
dll | Advapi32.dll |