DWORD _stdcall CSPRegistCert
(
IN BYTE *pbCert,
IN DWORD dwCertLen,
IN DWORD dwKeySpec,
IN LPCSTR szContainer
)
{
DWORD dwRet,dwCSPNameLen,dwStoreNameLen,dwConNameLen,dwProviderLen;
LPWSTR wszCSPName=NULL,wszStoreName=NULL,wszConName=NULL;
char szProvider[256];
// we use unicode, its default code for register cert
dwStoreNameLen=(strlen("MY")+1)*sizeof(WCHAR);
wszStoreName=(LPWSTR)malloc(dwStoreNameLen);
// covert multi characters to wide characters
dwProviderLen=sizeof(szProvider)-1;
memset(szProvider,0x00,sizeof(szProvider));
HRGetCSPProvider(szProvider,&dwProviderLen);