Fonction CredMarshalCredentialA (wincred.h)
La fonction CredMarshalCredential transforme des informations d’identification en chaîne de texte. Historiquement, de nombreuses fonctions, telles que NetUseAdd, prennent un nom de domaine, un nom d’utilisateur et un mot de passe comme informations d’identification. Ces fonctions n’acceptent pas les certificats en tant qu’informations d’identification. La fonction CredMarshalCredential convertit ces informations d’identification dans un formulaire qui peut être transmis dans ces API.
Les informations d’identification marshalées doivent être passées en tant que chaîne de nom d’utilisateur à toute API actuellement transmise. Le nom de domaine, le cas échéant, passé à cette API doit être passé comme NULL ou vide. Pour les informations d’identification du certificat, le code pin du certificat doit être passé à cette API en tant que mot de passe.
L’appelant ne doit pas modifier ou imprimer les informations d’identification marshalées. La valeur retournée peut être convertie librement entre les jeux de caractères Unicode, ANSI et OEM. La chaîne respecte la casse.
Syntaxe
BOOL CredMarshalCredentialA(
[in] CRED_MARSHAL_TYPE CredType,
[in] PVOID Credential,
[out] LPSTR *MarshaledCredential
);
Paramètres
[in] CredType
Type des informations d’identification à marshaler.
[in] Credential
Informations d’identification à marshaler.
Il s’agit de l’une des valeurs CRED_MARSHAL_TYPE .
Si CredType est CertCredential, credential pointe vers une structure CERT_CREDENTIAL_INFO .
Si CredType est UsernameTargetCredential, credential pointe vers une structure USERNAME_TARGET_CREDENTIAL_INFO .
[out] MarshaledCredential
Pointeur vers une chaîne terminée par null qui contient les informations d’identification marshalées. L’appelant doit libérer la mémoire tampon retournée à l’aide de CredFree.
Valeur retournée
Cette fonction retourne TRUE en cas de réussite et FALSE en cas d’échec. La fonction GetLastError peut être appelée pour obtenir un code status plus spécifique. Le code status suivant peut être retourné :
ERROR_INVALID_PARAMETER
CredType n’est pas valide.
Remarques
Notes
L’en-tête wincred.h définit CredMarshalCredential comme un alias qui sélectionne automatiquement la version ANSI ou Unicode de cette fonction en fonction de la définition de la constante de préprocesseur UNICODE. Le mélange de l’utilisation de l’alias neutre en encodage avec du code qui n’est pas neutre en encodage peut entraîner des incompatibilités qui entraînent des erreurs de compilation ou d’exécution. Pour plus d’informations, consultez Conventions pour les prototypes de fonction.
Configuration requise
Condition requise | Valeur |
---|---|
Client minimal pris en charge | Windows XP [applications de bureau uniquement] |
Serveur minimal pris en charge | Windows Server 2003 [applications de bureau uniquement] |
Plateforme cible | Windows |
En-tête | wincred.h |
Bibliothèque | Advapi32.lib |
DLL | Advapi32.dll |