【发布时间】:2009-07-29 15:41:29
【问题描述】:
有没有办法以编程方式从 Excel 工作表的 VBA 宏中删除数字签名?
即代码相当于进入VBA编辑器,进入工具菜单->数字签名,点击删除。
【问题讨论】:
标签: excel digital-signature vba
有没有办法以编程方式从 Excel 工作表的 VBA 宏中删除数字签名?
即代码相当于进入VBA编辑器,进入工具菜单->数字签名,点击删除。
【问题讨论】:
标签: excel digital-signature vba
有趣的问题。 出于安全原因,它故意不包含在 Excel 对象模型中。
可以从证书存储中删除证书。这需要 Win32 api 调用(可以从 VB6 或 VBA 进行,但我不确定这样做后对您的项目的确切影响...... 它肯定会使证书无效,但我不知道它是否会删除它。 此外,您可能不希望从商店中删除证书(因为您可能会将其用于其他用途)。
要查看证书存储,请在运行提示符下键入 certmgr.msc。
无论如何,一个关于如何以编程方式删除证书的链接。
KB article showing how to remove a trusted root certificate from the store.
要求:
1. 您需要下载适用于相应平台的 Windows SDK 以获取 capicom dll,+ regsvr32 它们
2. 您需要从要删除的证书中提取公钥。
3. 先用一个不重要的工作簿测试,我不知道这种方法是否会(除了使证书无效)也会导致工作簿损坏。希望有人有比这更好的建议。
【讨论】: