我有一个自定义操作来执行自定义操作DLL,但它失败了,我认为这是因为它不知道如何读取强名称程序集
所以我有这样的想法:
<Binary Id="StrongName" SourceFile="$(var.MyProject.TargetDir)MyProject.CA.dll"/>
<CustomAction Id="CreateIt"
BinaryKey="StrongName"
DllEntry="Create"
Execute="deferred"
Return="check"
HideTarget="no"
Impersonate="no" />
<CustomAction Id="RemoveIt"
BinaryKey="StrongName"
DllEntry="Remove"
Execute="deferred"
Return="check"
HideTarget="no"
Impersonate="no" />
<InstallExecuteSequence>
<Custom Action="CreateIt" Before="InstallFinalize">(NOT REMOVE = "ALL")</Custom>
<Custom Action="RemoveIt" Before='InstallFinalize'>(NOT UPGRADINGPRODUCTCODE) AND (REMOVE="ALL")</Custom>
</InstallExecuteSequence>那么,如何在执行此DLL时引用签名呢?
发布于 2012-04-16 23:52:36
我的问题的解决方案是一个由.NET 4不支持的过时的库引起的安全问题,这是一个不同的主题,所以除非有人好奇,否则我不会详细讨论它。
发布于 2012-04-16 23:38:03
我假设您正在使用的*.CA.DLL命名法是一个DTF自定义操作。这是承载托管DLL的本机封装的DLL。作为本机,它不能是强名称。
记录安装并查看日志,查找失败的原因。
https://stackoverflow.com/questions/10175494
复制相似问题