| Platform SDK: Certificate Enrollment Control |
The following Visual Basic sample code shows how the Certificate Enrollment Control can be used with the CCertRequest object to create and submit a certificate request. The CCertRequest object is available in the Certcli Type Library.
Private Sub Command1_Click()
' Declare objects for Enrollment and Request controls.
Dim objXen As Object
Dim objRequest As CCertRequest ' from CertCli Type library
' string variables
Dim strDN As String
Dim strReq As String
' variable to retrieve request's Submit disposition
Dim nDisp As Long
' consts used by CCertRequest
Const CR_IN_BASE64 As Long = &H1
Const CR_IN_PKCS10 As Long = &H100
On Error GoTo Err_Handler
' Create an instance of the Certificate Enrollment object.
Set objXen = CreateObject("CEnroll.CEnroll.1")
' Create an instance of the Certificate Request object.
Set objRequest = New CCertRequest
'Build the distinguished name string.
strDN = "CN=UserName" _
& ",OU=UserUnit" _
& ",O=UserOrg" _
& ",L=UserCity" _
& ",S=WA" _
& ",C=US"
' Create the PKCS #10 request.
strReq = objXen.createPKCS10(strDN, "1.3.6.1.4.1.311.2.1.21")
' Submit the request.
MsgBox ("Attempting request submit")
nDisp = objRequest.Submit(CR_IN_BASE64 Or CR_IN_PKCS10, _
strReq, _
"", _
"Server\CertAuth")
' Free the objects.
Set objXen = Nothing
Set objRequest = Nothing
Exit Sub
Err_Handler:
' Inform user there was an error.
MsgBox ("Failed")
' Disable error handling.
On Error GoTo 0
End Sub