Platform SDK: Certificate Enrollment Control |
The following VBScript sample code shows how the Certificate Enrollment Control can be used with the CCertRequest object to create and submit a certificate request.
<HTML> <HEAD> <TITLE>VBScript Certificate Enrollment Control Sample </TITLE> <OBJECT classid="clsid:43F8F289-7A20-11D0-8F06-00C04FC295E1" codebase="xenroll.dll" id=Enroll > </OBJECT> <OBJECT classid="clsid:98AFF3F0-5524-11D0-8812-00A0C903B83C" codebase="certcli.dll" id=Request > </OBJECT> <BR> Certificate Enrollment Control Request Sample <BR> <BR> <SCRIPT language="VBScript"> <!-- ' Declare the distinguished name variable. Dim strDN ' Declare the request variable. Dim strReq ' Declare a local variable for request disposition. Dim nDisp ' Enable error handling. On Error Resume Next ' Declare consts used by CertRequest object. const CR_IN_BASE64 = &H1 const CR_IN_PKCS10 = &H100 ' Build the DN. strDN = "CN=UserName" _ & ",OU=UserUnit" _ & ",O=UserOrg" _ & ",L=UserCity" _ & ",S=WA" _ & ",C=US" ' Attempt to use the control, in this case, to create a PKCS #10. MsgBox("Creating PKCS #10 " & strDN) strReq = Enroll.createPKCS10( strDN, "1.3.6.1.4.1.311.2.1.21") ' If above line failed, Err.Number will not be 0. if ( Err.Number <> 0 ) then MsgBox("Error in call to createPKCS10 " & Err.Number) err.clear else MsgBox("Submitting request " & strReq) nDisp = Request.Submit( CR_IN_BASE64 OR CR_IN_PKCS10, _ strReq, _ "", _ "Machine\CertAuth") ' If the preceding line failed, Err.Number will not be 0. if ( Err.Number <> 0 ) then MsgBox("Error in Request Submit " & Err.Number) err.clear else MsgBox("Submitted certificate; disposition = " & nDisp) end if end if --> </SCRIPT> <BR> </HEAD> </HTML>