Fonction CryptSIPGetSignedDataMsg (mssip.h)
La fonction CryptSIPGetSignedDataMsg récupère une signature Authenticode à partir du fichier.
Syntaxe
BOOL CryptSIPGetSignedDataMsg(
[in] SIP_SUBJECTINFO *pSubjectInfo,
[out] DWORD *pdwEncodingType,
[in] DWORD dwIndex,
[in, out] DWORD *pcbSignedDataMsg,
[out] BYTE *pbSignedDataMsg
);
Paramètres
[in] pSubjectInfo
Pointeur vers une structure de SIP_SUBJECTINFO qui contient des informations sur l’objet du message.
[out] pdwEncodingType
Type d’encodage de la signature Authenticode.
Ce paramètre peut être une combinaison d’une ou plusieurs des valeurs suivantes.
Valeur | Signification |
---|---|
|
Spécifie l’encodage des messages PKCS #7 . |
|
Spécifie l’encodage du certificat X.509 . |
[in] dwIndex
Ce paramètre est réservé et doit être défini sur zéro.
[in, out] pcbSignedDataMsg
Longueur, en octets, de la mémoire tampon pointée vers le paramètre pbSignedDataMsg .
[out] pbSignedDataMsg
Pointeur vers une mémoire tampon pour recevoir la signature Authenticode retournée.
Pour déterminer la taille de la mémoire tampon nécessaire, définissez le paramètre pbSignedDataMsg sur NULL et appelez la fonction CryptSIPGetSignedDataMsg . Cette fonction place la taille requise de la mémoire tampon, en octets, dans la valeur pointée par pcbSignedDataMsg. Pour plus d’informations, consultez Récupération de données de longueur inconnue.
Valeur retournée
Si la fonction réussit, la fonction retourne TRUE.
Si la fonction échoue, elle retourne FALSE. Pour obtenir des informations d’erreur étendues, appelez GetLastError. Certains codes d’erreur possibles suivent.
Code de retour | Description |
---|---|
|
La signature spécifiée par l’index est introuvable. |
|
Le format de fichier ou de données spécifié du package d’interface objet (SIP) n’est pas valide. |
|
La structure [SIP_SUBJECTINFO](/windows/desktop/api/mssip/ns-mssip-sip_subjectinfo) est un pointeur null. |
|
La taille de la mémoire tampon de message était insuffisante pour contenir les données récupérées. Le paramètre pcbSignedDataMsg a été défini pour indiquer la taille de mémoire tampon requise. |
|
Le type d’objet spécifié n’est pas valide. |
Remarques
Les sujets incluent, sans s’y limiter, les images exécutables portables (.exe), les images d’armoire (.cab), les fichiers plats et les fichiers catalogue. Chaque type de sujet utilise un sous-ensemble différent de ses données pour le calcul de hachage et nécessite une procédure différente pour le stockage et la récupération. Par conséquent, chaque type de sujet a une spécification SIP unique.
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 | mssip.h |
Bibliothèque | Crypt32.lib |
DLL | Crypt32.dll |