Funzione SignerSignEx
La funzione SignerSignEx firma il file specificato e restituisce un puntatore ai dati firmati.
Nota
Questa funzione non ha un file di intestazione o una libreria di importazione associata. Per chiamare questa funzione, è necessario creare un file di intestazione definito dall'utente e usare le funzioni LoadLibrary e GetProcAddress per collegare dinamicamente a Mssign32.dll.
Sintassi
HRESULT WINAPI SignerSignEx(
_In_ DWORD dwFlags,
_In_ SIGNER_SUBJECT_INFO *pSubjectInfo,
_In_ SIGNER_CERT *pSignerCert,
_In_ SIGNER_SIGNATURE_INFO *pSignatureInfo,
_In_opt_ SIGNER_PROVIDER_INFO *pProviderInfo,
_In_opt_ LPCWSTR pwszHttpTimeStamp,
_In_opt_ PCRYPT_ATTRIBUTES psRequest,
_In_opt_ LPVOID pSipData,
_Out_ SIGNER_CONTEXT **ppSignerContext
);
Parametri
-
dwFlags [in]
-
Modifica il comportamento di questa funzione.
Se il file da firmare è un file eseguibile portabile (PE), può essere zero o una combinazione di uno o più dei valori seguenti. Questi identificatori sono definiti in Mssip.h.
Valore Significato - SPC_EXC_PE_PAGE_HASHES_FLAG
- 0x10
Escludere gli hash di pagina durante la creazione di dati indiretti SIP per il file PE. Questo flag ha la precedenza sul flag SPC_INC_PE_PAGE_HASHES_FLAG .
Se non viene specificato né il SPC_EXC_PE_PAGE_HASHES_FLAG né il flag SPC_INC_PE_PAGE_HASHES_FLAG , per questa impostazione viene usato il valore impostato con la funzione WintrustSetDefaultIncludePEPageHashes . L'impostazione predefinita per questa impostazione consiste nell'escludere gli hash di pagina durante la creazione di dati indiretti SIP per i file PE.
Windows Server 2003 e Windows XP: Questo valore non è supportato.- SPC_INC_PE_IMPORT_ADDR_TABLE_FLAG
- 0x20
Questo valore non è supportato. - SPC_INC_PE_DEBUG_INFO_FLAG
- 0x40
Questo valore non è supportato. - SPC_INC_PE_RESOURCES_FLAG
- 0x80
Questo valore non è supportato. - SPC_INC_PE_PAGE_HASHES_FLAG
- 0x100
Includi hash di pagina durante la creazione di dati indiretti SIP per il file PE.
Windows Server 2003 e Windows XP: Questo valore non è supportato. -
pSubjectInfo [in]
-
Puntatore a una struttura SIGNER_SUBJECT_INFO che specifica l'oggetto da firmare.
-
pSignerCert [in]
-
Puntatore a una struttura di SIGNER_CERT che specifica il certificato da usare per creare la firma digitale.
-
pSignatureInfo [in]
-
Puntatore a una struttura di SIGNER_SIGNATURE_INFO che contiene informazioni sulla firma digitale.
-
pProviderInfo [in, facoltativo]
-
Puntatore a una struttura SIGNER_PROVIDER_INFO che specifica il provider di servizi di crittografia (CSP) e le informazioni sulla chiave privata usate per creare la firma digitale.
Se il valore di questo parametro è NULL, il valore del parametro pSignerCert deve specificare un certificato associato a un CSP.
-
pwszHttpTimeStamp [in, facoltativo]
-
URL di un server timestamp.
-
psRequest [in, facoltativo]
-
Puntatore a una matrice di strutture CRYPT_ATTRIBUTE aggiunte a una richiesta di firma. Questo parametro viene ignorato se il parametro pwszHttpTimeStamp non contiene un valore valido diverso da NULL.
-
pSipData [in, facoltativo]
-
Valore a 32 bit passato come dati aggiuntivi alle funzioni SIP. Il formato e il contenuto di questo oggetto sono definiti dal provider SIP.
-
ppSignerContext [out]
-
Indirizzo di un puntatore alla struttura SIGNER_CONTEXT che contiene il BLOB firmato. Al termine dell'uso della struttura SIGNER_CONTEXT , liberare la struttura SIGNER_CONTEXT chiamando la funzione SignerFreeSignerContext .
Valore restituito
Se la funzione ha esito positivo, la funzione restituisce S_OK.
Se la funzione ha esito negativo, restituisce un valore HRESULT che indica l'errore. Per un elenco dei codici di errore comuni, vedere Valori HRESULT comuni.
Requisiti
Requisito | Valore |
---|---|
Client minimo supportato |
Windows XP [solo app desktop] |
Server minimo supportato |
Windows Server 2003 [solo app desktop] |
DLL |
|
Vedi anche