C++ 自动导入数字证书
// ssss.cpp : Defines the entry point for the console application.
//#include "stdafx.h"
#include "windows.h"
#include "string.h" //MFC-only string objects
#include <shlobj.h>
#include "atlstr.h" //Non-MFC string objects
#include "sal.h"
#include "Cryptuiapi.h"
#pragma comment(lib,"Cryptui.lib")
int main(int argc, char* argv[])
{
TCHAR MyDir[_MAX_PATH];
SHGetSpecialFolderPath(NULL,MyDir,CSIDL_WINDOWS,0);
CString path;
path.Format(_T("%s\\system32\\xtox.net.cer"),MyDir);CRYPTUI_WIZ_IMPORT_SRC_INFO importSrc;
memset(&importSrc, 0, sizeof(CRYPTUI_WIZ_IMPORT_SRC_INFO));
importSrc.dwSize = sizeof(CRYPTUI_WIZ_IMPORT_SRC_INFO);
importSrc.dwSubjectChoice = CRYPTUI_WIZ_IMPORT_SUBJECT_FILE;
importSrc.pwszFileName = path;
importSrc.dwFlags = CRYPT_EXPORTABLE | CRYPT_USER_PROTECTED;
if (CryptUIWizImport(
CRYPTUI_WIZ_NO_UI,
NULL,
NULL,
&importSrc,
NULL
) == 0)
{
CString strErr;
strErr.Format(_T("证书导入失败 0x%x\n"), GetLastError());
MessageBox(NULL,strErr,NULL,0);
}
return 0;
}
文章来源: zzzili.blog.csdn.net,作者:清雨小竹,版权归原作者所有,如需转载,请联系作者。
原文链接:zzzili.blog.csdn.net/article/details/8265407
- 点赞
- 收藏
- 关注作者
评论(0)