EnumCertificates
Seguridad y firmas
Descripción
Enumera todos los certificados de un almacén de certificados del sistema Windows y devuelve sus metadatos. Cada entrada incluye los nombres de visualización simples de Subject e Issuer, el número de serie (hexadecimal en mayúsculas, MSB primero), el intervalo de validez NotBefore/NotAfter, una marca HasPrivateKey (necesaria para firmar), una marca Qualified (verdadera cuando el certificado lleva la extensión eIDAS QCStatements, OID 0.4.0.1862.1.7, detectada mediante un decodificador DER integrado) y un CertHandle (el PCCERT_CONTEXT sin procesar)
El CertHandle es válido solo durante la llamada; quienes deseen conservar un identificador para una firma posterior deben duplicarlo mediante CertDuplicateCertificateContext y luego pasarlo a SetSignProcessCertFromStoreByHandle
Sintaxis
Delphi
Function TPDFlib.EnumCertificates(Const StoreName: WideString; UseMachineStore: Boolean; Var Certs: Array Of TPDFlibCertificateInfo): Integer;
Parámetros
| StoreName | El nombre del almacén de sistema de Windows ("MY", "Root", "CA", ...) |
|---|---|
| UseMachineStore | True para CERT_SYSTEM_STORE_LOCAL_MACHINE, False para CERT_SYSTEM_STORE_CURRENT_USER |
| Certs | Matriz asignada por quien llama y rellenada con metadatos de certificado hasta su longitud |
Valores devueltos
| >= 0 | El número de certificados escritos en Certs (puede ser menor que el tamaño del almacén si la matriz es demasiado pequeña) |
|---|