Wix自定义操作项目是否可以签名?

Wix自定义操作项目是否可以签名?,wix,windows-installer,.net-4.6,wix3.10,Wix,Windows Installer,.net 4.6,Wix3.10,我们正在使用Wix进行安装项目,并在其中有一个单独的CustomAction项目。 CustomAction项目(强签名)有一个强签名的依赖项目(称为ProjA)引用 Case1#自定义操作和ProjA项目都已签名,然后出现以下错误。 无法加载文件或程序集XXX.CustomAction、版本=2.5.2.0、区域性=中性、PublicKeyToken=xxxxxxxx'或其依赖项之一。强名称验证失败。(HRESULT的异常:0x8013141A) 案例2 35;如果我们从自定义操作项目中删除了

我们正在使用Wix进行安装项目,并在其中有一个单独的CustomAction项目。 CustomAction项目(强签名)有一个强签名的依赖项目(称为ProjA)引用

Case1#自定义操作和ProjA项目都已签名,然后出现以下错误。 无法加载文件或程序集XXX.CustomAction、版本=2.5.2.0、区域性=中性、PublicKeyToken=xxxxxxxx'或其依赖项之一。强名称验证失败。(HRESULT的异常:0x8013141A)

案例2 35;如果我们从自定义操作项目中删除了强签名,并保留ProjA签名,那么我们将得到以下错误 无法加载文件或程序集XXX.ProjA、版本=2.5.2.0、区域性=中性、PublicKeyToken=xxxxxxxx'或其依赖项之一。强名称验证失败。(HRESULT的异常:0x8013141A)

案例3 35;如果我们从自定义操作和ProjA项目中删除强签名,安装程序将成功运行。 因此,我们正在寻求案件1的解决


有人对此有什么想法吗?

从阅读DTF工作原理的背景知识开始:

当您将包装好的CA DLL重命名为.zip并查看其内容时,您可能不会在其中看到您的签名DLL

我这么做已经有一段时间了,但我认为这与SfxCA的默认构建行为有关,即尝试决定应该打包什么和不应该打包什么。(假设您的DLL是,其他DLL是,system.DLL否),我认为它考虑了代码签名。在引用上切换CopyLocal(true | false)标志,并使用zip技术重新生成/重新检查