首页 > 解决方案 > Dotfuscator - 是否混淆 .msi 文件?

问题描述

我有一个带有 .msi 输出的 .Net 解决方案。运行混淆(使用Dotfuscate)会引发以下错误:

PE Signature not found.  Is \Release\Output.msi a PE file?

想知道Dotfuscate不支持。msi文件混淆。

谢谢你的帮助 !

标签: installationobfuscationdotfuscator

解决方案


Dotfuscator 不会混淆.msi文件,只会混淆 .NET 程序集(.dll以及.exe使用 C#、F# 或 Visual Basic .NET 制作的文件)。如果您以 .NET 程序集交付 .NET 程序集.msi,则需要使用 Dotfuscator 保护它们,然后再将它们添加到您的.msi.

最简单的方法是将 Dotfuscator 集成到应用程序的.exe项目中。然后,当您在 Visual Studio 或 MSBuild 中构建项目时,Dotfuscator 将保护其中的程序集bin\Release(包括.exe集成项目以及.dll解决方案中其他项目的程序集),然后您.msi可以正常获取这些程序集。这也允许 Dotfuscator 与其他打包格式(如 Xamarin)一起使用,因为此集成在项目编译之后但在打包之前运行。

免责声明:我为 Dotfuscator 团队工作,并且作为我工作的一部分回答。)


推荐阅读