卸载我的应用程序时,需要通知服务器,以便它可以释放分配给客户端的许可证密钥。这是通过Web服务调用完成的。
我创建了一个C#自定义操作来执行此操作。问题是,卸载程序正在退出,说它无法找到一个DLL。
msi的错误日志包含以下错误:
错误1723.存在问题 这个Windows Installer包。一个DLL 完成此安装所需 无法运行。联系您的支持 人员或包装供应商。行动 ReadLicenseKeyFromFile,条目: ReadLicenseKey,库: C:\ WINDOWS \安装\ MSI4F42.tmp
我将函数ReadLicenseKey标记为自定义操作。自定义操作名为ReadLicenseKeyFromFile。
<Custom Action="ReadLicenseKeyFromFile" After="InstallInitialize">
REMOVE~="ALL" AND NOT UPGRADINGPRODUCTCODE
</Custom>
<CustomAction Id="ReadLicenseKeyFromFile" BinaryKey="UnInstallCA.CA.dll" DllEntry="ReadLicenseKey" Execute="immediate" Return="check" />
<Binary Id="UnInstallCA.CA.dll" SourceFile="$(var.UnInstallCA.TargetDir)UnInstallCA.CA.dll" />
自定义操作项目正在输出.CA.dll文件。我已经尝试安装文件作为设置的一部分,手动复制粘贴文件,没有对文件做任何事情......基本上尝试了所有可能的组合。
必须有一些我缺少的东西,所以请帮忙。