我希望使用Intellilock 1.8锁定一个Outlook2010外接程序包.它包括Mocrosoft VSTO dlls、我的自定义签名dll和带有安全哈希的清单文件。我在锁定dll时提供了项目*.snk密钥文件,但在尝试安装最终包时仍然会收到错误:
System.Deployment.Application.InvalidDeploymentException:文件OutlookAddIn2010.dll与清单中指定的计算散列不同。
原始Visual安装程序还会自动创建签名的ClickOnce清单。主要dll在本节中提到:
<dependency>
<dependentAssembly dependencyType="install" allowDelayedBinding="true" codebase="OutlookAddIn2010.dll" size="275968">
<assemblyIdentity name="OutlookAddIn2010" version="2.7.0.0" publicKeyToken="DEDC24E24E6D7D88" language="neutral" processorArchitecture="msil" />
<hash>
<dsig:Transforms>
<dsig:Transform Algorithm="urn:schemas-microsoft-com:HashTransforms.Identity" />
</dsig:Transforms>
<dsig:DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha1" />
<dsig:DigestValue>Vg17KBReMnOV9emW0ddVuN7AaIU=</dsig:DigestValue>
</hash>
</dependentAssembly>
</dependency>发布于 2014-02-26 03:55:48
解决方案是在主构建之前应用IntelliLock签名。解决方案与此question相同。
<Target Name="AfterCompile">
<Exec Command="$(IntelliLockLocation) -project $(IntelliLockProject) -file "$(ProjectDir)$(IntermediateOutputPath)$(TargetFileName)" -targetfile "$(ProjectDir)$(IntermediateOutputPath)$(TargetFileName)" -snkeypair "$(ProjectDir)$(AssemblyOriginatorKeyFile)" -snpassword *****" />
</Target>https://stackoverflow.com/questions/20942007
复制相似问题