Ir para conteúdo
  • Cadastre-se

dev botao

Recommended Posts

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.

  • Curtir 1
Link para o comentário
Compartilhar em outros sites

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 conta

Entrar

Já tem uma conta? Faça o login.

Entrar Agora
×
×
  • Criar Novo...

Informação Importante

Colocamos cookies em seu dispositivo para ajudar a tornar este site melhor. Você pode ajustar suas configurações de cookies, caso contrário, assumiremos que você está bem para continuar.

The popup will be closed in 10 segundos...