我在visual studio安装项目中成功实现了自定义操作,以加密app.config文件,并通过文本框捕获用户输入。但是我的项目有第三方dll引用,我想合并。我已经使用redgate智能程序集进行了合并,之后当我使用合并的混淆程序集构建安装项目时,安装过程中出现错误(无法获得程序集错误1001的安装程序类型)。
您能告诉我如何使用Installshield
通过自定义对话框加密app.config并捕获用户输入答案 0 :(得分:1)
InstallerClass自定义操作(InstallUtil)非常脆弱,永远不应该使用。您遇到的问题很可能是您的自定义操作程序集引用了一个无法再在磁盘上找到的程序集,因为它已合并到另一个程序集中。
InstallUtil CA会发生此问题,无论是由Visual Studio安装项目还是InstallShield Basic MSI项目调用,因为问题不在MSI中,而是在您的CA中。
我建议您查看WiX部署工具框架(DTF)。这是一种更简洁的方法来实现托管代码自定义操作,以便CA及其所有依赖项显示为Windows Installer的单个本机DLL。在运行时,本机存根提取所有文件,运行.NET代码并为您编组双方之间的所有MSI API调用。
它非常干净,它可以在Setup Projects,WiX,InstallShield和其他MSI创作工具中使用,因为输出是一个简单的Win32 DLL,带有导出的stdcall函数。 (Msi Type 1 Custom Action Spec)