Sample code for 30+ languages & platforms
Unicode C

Import a Certificate (.cer file) into a Windows Certificate Store

See more Certificates Examples

Demonstrates how to import a certificate (without private key) into a Windows certificate store.

Chilkat Unicode C Downloads

Unicode C
#include <C_CkCertW.h>
#include <C_CkCertStoreW.h>

void ChilkatSample(void)
    {
    BOOL success;
    HCkCertW cert;
    HCkCertStoreW certStoreCU;
    BOOL readOnlyFlag;

    success = FALSE;

    cert = CkCertW_Create();

    success = CkCertW_LoadFromFile(cert,L"qa_data/certs/example.cer");
    if (success == FALSE) {
        wprintf(L"%s\n",CkCertW_lastErrorText(cert));
        CkCertW_Dispose(cert);
        return;
    }

    certStoreCU = CkCertStoreW_Create();
    readOnlyFlag = FALSE;

    //  "CurrentUser" and "My" are the exact keywords to select your user account's certificate store.
    success = CkCertStoreW_OpenWindowsStore(certStoreCU,L"CurrentUser",L"My",readOnlyFlag);
    if (success == FALSE) {
        wprintf(L"Failed to open the CurrentUser/My certificate store for read/write.\n");
        CkCertW_Dispose(cert);
        CkCertStoreW_Dispose(certStoreCU);
        return;
    }

    //  Import the certificate into the CurrentUser/My certificate store.
    success = CkCertStoreW_AddCertificate(certStoreCU,cert);
    if (success == FALSE) {
        wprintf(L"%s\n",CkCertStoreW_lastErrorText(certStoreCU));
        CkCertW_Dispose(cert);
        CkCertStoreW_Dispose(certStoreCU);
        return;
    }

    wprintf(L"Imported %s\n",CkCertW_subjectCN(cert));
    wprintf(L"Success.\n");


    CkCertW_Dispose(cert);
    CkCertStoreW_Dispose(certStoreCU);

    }