如果有人会发布 ClickOnce版本,怎么会被Dotfuscator混淆?
最佳答案
您可以使用 Dotfuscator 的商业版本通过将部署 list (“foo.application”)添加为 Dotfuscator 项目的输入来自动混淆 ClickOnce 应用程序。 Dotfuscator 将允许您向 ClickOnce 应用程序中包含的程序集添加任何必要的排除项,并将创建包含混淆程序集的更新部署和应用程序 list 。
Visual Studio(包括 Visual Studio 2010)中包含的免费版 Dotfuscator 没有自动混淆 ClickOnce 应用程序的功能。为了获得功能正常的混淆 ClickOnce 应用程序,您需要重新创建或更新 ClickOnce list ,因为混淆会更改程序集的签名。
您可以使用mage.exe或 mageui.exe (包含在 Windows/.NET SDK 中)以更新 ClickOnce list 。如果您要使用 mage.exe,您需要注意不能在 ClickOnce 选项中使用“使用 .deploy 文件扩展名”选项,因为它无法识别它。
假设您的 ClickOnce 应用程序名为“Foo”并且版本为 1.0.0.0,您将要遵循的过程是:
mage.exe -Update "Application Files\Foo_1_0_0_0\Foo.exe.manifest"-CertFile "c:\Foo\foo.pfx"-Password 密码
mage.exe -Update Foo.application -AppManifest "Application Files\Foo_1_0_0_0\Foo.exe.manifest"-CertFile "c:\Foo\foo.pfx"-Password 密码
您现在拥有使用混淆程序集的有效应用程序和部署 list 。您也可以使用 MageUI.exe 工具来完成相同的任务(它知道如何处理带有 .deploy 扩展名的程序集),但自动化并不容易。
关于.net - 如何对 ClickOnce 使用混淆?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3416223/