社区
网络编程
帖子详情
怎样在 vc++ 程序(MFC)中实现 把个人数字证书 加载到证书库中?
猿年码月
2009-11-03 04:43:44
开始我用CrytoAPI但是都是证书库之间的调用,和一些遍历证书库,显示证书的操作。我用了CertCreateCertificateContext()函数来制造一个证书的句柄,但是它只对.cer格式证书有效,
求怎样编程实现注册 .p12 格式的个人证书到证书库中,和从证书库中删除。(也就是实现windows自带的证书向导那样的导入和注销证书功能)。
最好能提供一个历程。
...全文
571
9
打赏
收藏
怎样在 vc++ 程序(MFC)中实现 把个人数字证书 加载到证书库中?
开始我用CrytoAPI但是都是证书库之间的调用,和一些遍历证书库,显示证书的操作。我用了CertCreateCertificateContext()函数来制造一个证书的句柄,但是它只对.cer格式证书有效, 求怎样编程实现注册 .p12 格式的个人证书到证书库中,和从证书库中删除。(也就是实现windows自带的证书向导那样的导入和注销证书功能)。 最好能提供一个历程。
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
9 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
wwww2
2009-12-30
打赏
举报
回复
PFXImportCertStore
这个函数应该满足你需要
猿年码月
2009-11-04
打赏
举报
回复
[Quote=引用 7 楼 miaolingshaohua 的回复:]
pCryptCATAdminAcquireContext =
(CryptCATAdminAcquireContext)GetProcAddress(dllHandle,"CryptCATAdminAcquireContext");
pCryptCATAdminReleaseContext =
(CryptCATAdminReleaseContext)GetProcAddress(dllHandle,"CryptCATAdminReleaseContext");
pCryptCATAdminCalcHashFromFileHandle =
(CryptCATAdminCalcHashFromFileHandle)GetProcAddress(dllHandle,"CryptCATAdminCalcHashFromFileHandle");
pCryptCATAdminEnumCatalogFromHash =
(CryptCATAdminEnumCatalogFromHash )GetProcAddress(dllHandle,"CryptCATAdminEnumCatalogFromHash");
pCryptCATAdminReleaseCatalogContext =
(CryptCATAdminReleaseCatalogContext)GetProcAddress(dllHandle,"CryptCATAdminReleaseCatalogContext");
pCryptCATCatalogInfoFromContext =
(CryptCATCatalogInfoFromContext)GetProcAddress(dllHandle,"CryptCATCatalogInfoFromContext");
pWinVerifyTrustX =
(WinVerifyTrustX)GetProcAddress(dllHandle,"WinVerifyTrust");
if (pCryptCATAdminAcquireContext == NULL
|| pCryptCATAdminReleaseContext == NULL
|| pCryptCATAdminCalcHashFromFileHandle == NULL
|| pCryptCATAdminEnumCatalogFromHash == NULL
|| pCryptCATAdminReleaseCatalogContext == NULL
|| pCryptCATCatalogInfoFromContext == NULL
|| pWinVerifyTrustX == NULL)
pCryptCATAdminCalcHashFromFileHandle
这些函数建议你用一下,是 获得数字签名的一些函数
[/Quote]
不需要获得签名,我要做的是把证书 加载上 让IE能识别就可以了。
哈利路亚1874
2009-11-03
打赏
举报
回复
pCryptCATAdminAcquireContext =
(CryptCATAdminAcquireContext)GetProcAddress(dllHandle,"CryptCATAdminAcquireContext");
pCryptCATAdminReleaseContext =
(CryptCATAdminReleaseContext)GetProcAddress(dllHandle,"CryptCATAdminReleaseContext");
pCryptCATAdminCalcHashFromFileHandle =
(CryptCATAdminCalcHashFromFileHandle)GetProcAddress(dllHandle,"CryptCATAdminCalcHashFromFileHandle");
pCryptCATAdminEnumCatalogFromHash =
(CryptCATAdminEnumCatalogFromHash )GetProcAddress(dllHandle,"CryptCATAdminEnumCatalogFromHash");
pCryptCATAdminReleaseCatalogContext =
(CryptCATAdminReleaseCatalogContext)GetProcAddress(dllHandle,"CryptCATAdminReleaseCatalogContext");
pCryptCATCatalogInfoFromContext =
(CryptCATCatalogInfoFromContext)GetProcAddress(dllHandle,"CryptCATCatalogInfoFromContext");
pWinVerifyTrustX =
(WinVerifyTrustX)GetProcAddress(dllHandle,"WinVerifyTrust");
if (pCryptCATAdminAcquireContext == NULL
|| pCryptCATAdminReleaseContext == NULL
|| pCryptCATAdminCalcHashFromFileHandle == NULL
|| pCryptCATAdminEnumCatalogFromHash == NULL
|| pCryptCATAdminReleaseCatalogContext == NULL
|| pCryptCATCatalogInfoFromContext == NULL
|| pWinVerifyTrustX == NULL)
pCryptCATAdminCalcHashFromFileHandle
这些函数建议你用一下,是 获得数字签名的一些函数
MoXiaoRab
2009-11-03
打赏
举报
回复
CrytoAPI可以实现证书库的操作的。我有个学长做过,但是我不是很清楚,但是可以肯定它可以
猿年码月
2009-11-03
打赏
举报
回复
[Quote=引用 2 楼 tr0j4n 的回复:]
Windows不支持p12这种证书的API支持。你那种是自己的一套机制
[/Quote]
2楼你能说的具体点吗,用什么技术,或者借助什么方法实现?
猿年码月
2009-11-03
打赏
举报
回复
[Quote=引用 3 楼 tr0j4n 的回复:]
必须使用CrytoAPI。你有PKI的书么?
[/Quote]
我有些有这方面的资料,请问用CrytoAPI是否能实现上述功能,如何实现,能说下具体用到的函数吗?
MoXiaoRab
2009-11-03
打赏
举报
回复
必须使用CrytoAPI。你有PKI的书么?
MoXiaoRab
2009-11-03
打赏
举报
回复
[Quote=引用楼主 cchai83321 的回复:]
开始我用CrytoAPI但是都是证书库之间的调用,和一些遍历证书库,显示证书的操作。我用了CertCreateCertificateContext()函数来制造一个证书的句柄,但是它只对.cer格式证书有效,
求怎样编程实现注册 .p12 格式的个人证书到证书库中,和从证书库中删除。(也就是实现windows自带的证书向导那样的导入和注销证书功能)。
最好能提供一个历程。
[/Quote]
Windows不支持p12这种证书的API支持。你那种是自己的一套机制
WecanHuang
2009-11-03
打赏
举报
回复
个人数字证书是什么?
可以用普通数据库方案实现吗
v
c++
建立web
中
ActiveX插件的过程
前言 本人不懂
C++
,当前由于要做一个打印控件,使用Activex插件技术,所以在网络上搜索了相关技术文档,今天有空,遂将自己的当前学到的一些关于Activex技术整理之,进而和朋友们分享之。 一、 开发环境 开发工具:Visual Studio 2008 开发语言:Visual
C++
测试工具:IE 7+ 二、 创建
MFC
ActiveX项目 1、 打开
[activeX]VC2005开发
MFC
ActiveX ocx控件全过程[转]
ActiveX控件用于Web的过程是将控件嵌入主页
中
,用户通过浏览器访问该主页时,将主页
中
的控件下载,并在用户机器上注册,以后就可在用户的浏览器上运行。控件下载一次后就驻留在用户本地机器上,下次再访问相同的主页时,可不再下载该控件,而是直接运行用户本地的控件。这里控件容器就是浏览器,用户不需要通过浏览器调用控件的属性或方法。因此,开发面向Web的ActiveX控件比开发桌面的控件还要简单些,所复杂
VC,
MFC
开发技巧收集
(mainmenu->GetSubMenu (0))->DeleteMenu(i,MF_BYPOSITION); break; } } 十五、改变应用
程序
的图标 缺 十六、另一种改变窗口标题的方法 使用语句 CWnd* m_pCWnd = AfxGetMainWnd( ),然后,再以如下形式调用SetWindowText()函数: SetWindowText(
VC ActiveX 控件 开发总结
VC 制作ActiveX 控件(OCX) http://ileson.iteye.com/blog/1002910 1、vc6下建立一下activeX工程 详见http://hi.baidu.com/mailrabbit/blog/item/0624a608bde798346b60fbb6.html 2、在页面
中
调用 2.1:注册ocx到系统(也可以这样) C
cab文件打包的ActiveX控件(转)
2019独角兽企业重金招聘Python工程师标准>>> ...
网络编程
18,358
社区成员
64,212
社区内容
发帖
与我相关
我的任务
网络编程
VC/MFC 网络编程
复制链接
扫一扫
分享
社区描述
VC/MFC 网络编程
c++
c语言
开发语言
技术论坛(原bbs)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章