使用增量链接构建和签署解决方案,以便与Windows 10 Device Guard一起使用 [英] Building and signing a solution with incremental linking for use with Windows 10 Device Guard

查看:63
本文介绍了使用增量链接构建和签署解决方案,以便与Windows 10 Device Guard一起使用的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

使用Windows 10 Device Guard,我在包含许多C ++项目的大型解决方案中添加了对所有模块的签名。 但是,现在我在启用增量链接的项目上收到以下消息:

With Windows 10 Device Guard, I have added signing to all of my modules in a large solution containing many C++ projects.  However, now I am receiving the following messages on projects with incremental linking enabled:

LINK:C:\ SomePath \SomeFile.dll未找到或未由最后一个增量链接构建;执行完整链接

LINK : C:\SomePath\SomeFile.dll not found or not built by the last incremental link; performing full link

我怀疑这是由于DLL的签名造成的。 有没有办法将签名和增量链接功能放在一起?

I suspect this is due to the signing of the DLL.  Is there a way to have both signing and incremental linking function together?

谢谢。

推荐答案

你好simdoc,

Hi simdoc,

感谢您在这里发帖。

>> LINK :C:\ SomePath \SomeFile.dll未找到或未由上一个增量链接构建;执行完整链接

我怀疑这是由于DLL的签名造成的。 有没有办法将签名和增量链接功能放在一起?

你是否也启用了
链接时间代码生成
?增量链接与链接时间代码生成不兼容。

Did you also enable link time code generation? The incremental linking is incompatible with link time code generation.

此外,如果出现以下任何一种情况,LINK会执行完整链接:

Additionally, LINK performs a full link if any of the following situations occur:


  • 缺少增量状态(.ilk)文件。 (LINK创建一个新的.ilk文件,为后续的增量链接做准备。)
  • .ilk文件没有写权限。 (LINK忽略.ilk文件并非增量链接。)
  • 缺少.exe或.dll输出文件。
  • .ilk,.exe或.dll的时间戳已更改。
  • 更改了LINK选项。大多数LINK选项在构建之间更改时会导致完整链接。
  • 添加或省略对象(.obj)文件。
  • 使用/ Yu /编译的对象Z7选项已更改。

请检查您的dll是否符合以下条件之一。

Please check if your dll meets one of these conditions.

希望这可以帮助你。

最好的问候,

Sera Yu


这篇关于使用增量链接构建和签署解决方案,以便与Windows 10 Device Guard一起使用的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆