eraldocg Postado 26 Julho Compartilhar Postado 26 Julho Olá a todos, Procurei no fórum e não encontrei uma solução para o problema, então decidi compartilhar minha contribuição. Abaixo, você encontrará a rotina que desenvolvi para identificar se um certificado está instalado no Windows. Espero que seja útil para quem precisa! function IsCertificateInstalled(const SerialNumber: string): Boolean; var i: Integer; CertificateFound: Boolean; begin Result := False; CertificateFound := False; try // Tenta carregar os certificados disponíveis ACBrNFSeX1.SSL.LerCertificadosStore; // Itera sobre a lista de certificados carregados for i := 0 to ACBrNFSeX1.SSL.ListaCertificados.Count - 1 do begin // Verifica se o número de série do certificado atual é igual ao procurado if ACBrNFSeX1.SSL.ListaCertificados[i].NumeroSerie = SerialNumber then begin CertificateFound := True; Break; // Certificado encontrado, interrompe a busca end; end; // Define o resultado final Result := CertificateFound; except on E: Exception do begin // Log de erro ou tratamento específico pode ser adicionado aqui // Por exemplo: LogError('Erro ao verificar certificados: ' + E.Message); Result := False; // Em caso de erro, o certificado não foi encontrado end; end; end; como chamar: CertifInstalado := IsCertificateInstalled('NUMERO DO CERTIFICADO'); if CertifInstalado then ShowMessage ('Certificado encontrado!') else ShowMessage ('Certificado não encontrado.'); espero que seja util. 1 Link para o comentário Compartilhar em outros sites More sharing options...
Recommended Posts
Crie uma conta ou entre para comentar
Você precisar ser um membro para fazer um comentário
Criar uma conta
Crie uma nova conta em nossa comunidade. É fácil!
Crie uma nova contaEntrar
Já tem uma conta? Faça o login.
Entrar Agora