在Windows 10下对VBA项目进行数字签名

时间:2015-07-31 12:57:23

标签: vba outlook certificate digital-signature windows-10

昨天我从win 8.1升级到了10.在Outlook 2013中,在win 8.1下我有一个VBA脚本(宏),它自动将BCC添加到我发送的每封邮件中。此脚本已经过数字签名,因此我可以使用以下宏设置:“数字签名宏的通知,禁用所有其他宏”,而不是每次启动Outlook时都要求我启用此宏。现在它不再起作用了。如果我将此宏安全设置设置为“启用所有宏”,则脚本运行良好 - 但出于安全原因,我不想使用此设置。

显然问题出在VBA脚本的数字签名中。我从一开始就完成了这一切:我删除了以前的证书,使用SELFCERT.EXE创建了新的证书,并完成了所有的程序,如win 8.1,一切顺利,如描述here,除了它应该在哪个部分如果我信任发布者,我只会第一次询问,我应该检查“始终信任来自此发布者的宏”。我无法调用此窗口。也许这指出了一些问题或不一致:它应该显示这个窗口供我检查但是没有显示,因为我以前在win 8.1已经检查过它了??

有谁知道如何解决这个问题? 谢谢!

3 个答案:

答案 0 :(得分:6)

我终于明白了!

我唯一要做的就是以管理员身份运行Outlook。当我这样做时,窗口中有"信任来自该出版商的所有文件"出现之后我点击之后的所有内容就像以前一样。

答案 1 :(得分:1)

从Windows 7 x32升级到Windows 10但是使用Outlook 2010而不是2013时,我遇到了同样的问题。尝试了各种各样的事情但没有成功。

最终对我有用的是进入信任中心,宏设置,并选中“将宏安全设置应用于已安装的加载项”框以及“数字签名宏的通知”选项。

“禁用所有宏”选项变为灰色。

单击“确定”并退出Outlook。

下次打开Outlook时,系统会要求您接受每个已安装的加载项以及自我认证的VBA项目 - 但这是一次性要求。作为皮带和支架,我允许它自动安装证书。至少在我的情况下,从那时起我的所有宏都正常运行: - )

希望有所帮助!

答案 2 :(得分:1)

我意识到这个帖子已经过时了,但我发现了Bzek的解决方案有效的原因。我不想以管理员身份运行Outlook,但我也希望我的宏能够像在W7中那样运行。 Kopweb的潜在解决方案对我不起作用。

好消息是,在“客户端身份验证”的“证书”属性的“高级”部分中单击一个简单的复选框就可以了。正常重新启动Outlook,宏应该工作。见下图: Cert - Advanced Options