首页 > 解决方案 > 如何在 Visual Studio 中签署控制台应用程序

问题描述

我正在尝试运行一些代码以添加到我的项目中,但它不会按预期工作。代码在此页面上:

https://docs.microsoft.com/en-gb/previous-versions/windows/desktop/ics/c-registering-with-windows-firewall-ownership

它要求我使用“/integritycheck”链接器标志运行它。这样做会阻止生成的 exe 运行。

到目前为止,我已尝试使用自签名代码签名证书对 exe 进行签名,该证书已添加到受信任证书的存储中。即使在签名并验证签名之后,exe仍然无法运行。检查 exe 属性页面上的“数字签名”选项卡表明一切都很好。

就是它的样子。

当我尝试运行 exe 时,会出现一个对话框,上面写着“Windows 无法验证此文件的数字签名”。如上所述,据我所知,我已正确签名,因此不应出现对话框,让程序运行。

标签: c++visual-studiowinapi

解决方案


Jabberwocky 链接的问题将我带到了该页面:

https://www.meziantou.net/generate-a-self-signed-certificate-for-code-signing.htm

一些更多的个人研究使我找到了一些文章,告诉我使用/phsigntool 中的选项进行签名,并在测试模式下运行 windows。虽然我认为测试模式并不理想,但它至少允许我测试代码。

一起使用这些可以让我实际运行可执行文件。

在此处发布此内容以防其他人遇到此类问题。


推荐阅读