Mapeando Xenroll.dll para CertEnroll.dll

Antes do Windows Vista, o Controle de Registro de Certificado era implementado no Xenroll.dll. A biblioteca de Xenroll.dll foi removida do sistema operacional e substituída por CertEnroll.dll.

O Xenroll tentou implementar dois conjuntos paralelos de interfaces. ICEnroll, ICEnroll2, ICEnroll3 e ICEnroll4 eram compatíveis com a Automação e compatíveis com linguagens de script. As interfaces correspondentes — IEnroll, IEnroll2 e IEnroll4 — não puderam ser roteadas, mas eram mais convenientes para programadores C++. Conforme eles evoluíram, os dois conjuntos de interfaces não permaneceram sincronizados. Em particular, o conjunto de interfaces duplas representadas mais recentemente pelo ICEnroll4 define apenas um subconjunto da funcionalidade definida por IEnroll4.

CertEnroll.dll implementa um conjunto maior e mais estruturado de interfaces COM compatíveis com a Automação. Os tópicos a seguir discutem como Xenroll.dll mapeia para CertEnroll.dll para diferentes tipos de funcionalidade.

Usando a API de Registro de Certificado