Freigeben über


CryptSIPGetSignedDataMsg-Funktion (mssip.h)

Die CryptSIPGetSignedDataMsg-Funktion ruft eine Authenticode-Signatur aus der Datei ab.

Syntax

BOOL CryptSIPGetSignedDataMsg(
  [in]      SIP_SUBJECTINFO *pSubjectInfo,
  [out]     DWORD           *pdwEncodingType,
  [in]      DWORD           dwIndex,
  [in, out] DWORD           *pcbSignedDataMsg,
  [out]     BYTE            *pbSignedDataMsg
);

Parameter

[in] pSubjectInfo

Ein Zeiger auf eine SIP_SUBJECTINFO-Struktur , die Informationen zum Betreff der Nachricht enthält.

[out] pdwEncodingType

Der Codierungstyp der Authenticode-Signatur.

Dieser Parameter kann eine Kombination aus mindestens einem der folgenden Werte sein.

Wert Bedeutung
PKCS_7_ASN_ENCODING
65536 (0x10000)
Gibt die PKCS #7-Nachrichtencodierung an.
X509_ASN_ENCODING
1 (0x1)
Gibt die X.509-Zertifikatcodierung an.

[in] dwIndex

Dieser Parameter ist reserviert und sollte auf 0 festgelegt werden.

[in, out] pcbSignedDataMsg

Die Länge des Puffers in Bytes, auf den der parameter pbSignedDataMsg verweist.

[out] pbSignedDataMsg

Ein Zeiger auf einen Puffer, um die zurückgegebene Authenticode-Signatur zu empfangen.

Um die Größe des erforderlichen Puffers zu bestimmen, legen Sie den pbSignedDataMsg-Parameter auf NULL fest, und rufen Sie die Funktion CryptSIPGetSignedDataMsg auf. Diese Funktion platziert die erforderliche Größe des Puffers in Bytes in dem Wert, auf den von pcbSignedDataMsg verwiesen wird. Weitere Informationen finden Sie unter Abrufen von Daten unbekannter Länge.

Rückgabewert

Wenn die Funktion erfolgreich ist, gibt die Funktion TRUE zurück.

Wenn die Funktion fehlschlägt, gibt sie FALSE zurück. Rufen Sie GetLastError auf, um erweiterte Fehlerinformationen zu erhalten. Es folgen einige mögliche Fehlercodes.

Rückgabecode Beschreibung
CRYPT_E_NO_MATCH
Die vom Index angegebene Signatur konnte nicht gefunden werden.
ERROR_BAD_FORMAT
Das angegebene Daten- oder Dateiformat des Antragstellerschnittstellenpakets (SIP ) ist ungültig.
ERROR_INVALID_PARAMETER
Die [SIP_SUBJECTINFO](/windows/desktop/api/mssip/ns-mssip-sip_subjectinfo)-Struktur ist ein NULL-Zeiger.
ERROR_INSUFFICIENT_BUFFER
Die Größe des Nachrichtenpuffers reichte nicht aus, um die abgerufenen Daten aufzunehmen. Der parameter pcbSignedDataMsg wurde festgelegt, um die erforderliche Puffergröße anzugeben.
TRUST_E_SUBJECT_FORM_UNKNOWN
Der angegebene Antragstellertyp ist ungültig.

Hinweise

Zu den Themen gehören unter anderem portable ausführbare Images (.exe), Schrankbilder (.cab), Flatfiles und Katalogdateien. Jeder Antragstellertyp verwendet eine andere Teilmenge seiner Daten für die Hashberechnung und erfordert ein anderes Verfahren zum Speichern und Abrufen. Daher verfügt jeder Antragstellertyp über eine eindeutige SIP-Spezifikation.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Windows XP [nur Desktop-Apps]
Unterstützte Mindestversion (Server) Windows Server 2003 [nur Desktop-Apps]
Zielplattform Windows
Kopfzeile mssip.h
Bibliothek Crypt32.lib
DLL Crypt32.dll

Weitere Informationen

CryptSIPPutSignedDataMsg

CryptSIPRemoveSignedDataMsg