visual-studio - 是否可以混淆在 Visual Studio 2008 中创建的 ClickOnce 应用程序?

标签 visual-studio visual-studio-2008 clickonce obfuscation

我创建了一个 WPF 应用程序,并使用外部工具混淆了主 .exe。

现在我无法将其发布为 ClickOnce 应用程序,因为 Visual Studio 不知何故再次重新编译主可执行文件。

我停用了“解决方案”→“配置管理器”下的构建复选框,但它不起作用:当我将应用程序发布到http://localhost/MyApplication时,可执行文件不断被重建。

是否可以部署我的 ClickOnce 应用程序而不重新编译当前项目?

如果不行,是否有免费工具可以生成具有特定所需文件的 ClickOnce 应用程序?

最佳答案

免责声明:我为 Dotfuscator 的制造商 PreEmptive Solutions 工作。

Jared 解决方案的问题是,后生成任务在生成过程中执行得太晚,因为 ClickOnce 生成步骤在后生成触发之前很久就创建了 list (包括程序集签名,其中混淆发生了变化)。您可以破解 MSBuild 文件(您的 .csproj/.vbproj)文件以在 AfterCompile 步骤中调用混淆任务,并让混淆器将混淆后的程序集转储到构建 bin 目录中,但这很痛苦。

第二种选择是使用 Mage/MageUI 工具重新创建 ClickOnce list ,方法是发布应用程序、混淆程序集、使用混淆版本覆盖已发布的程序集,然后运行 ​​Mage 重新创建 list ,如图 here 所示。 。 Mage 实用程序的文档为 here .

第三种选择是,如果您的混淆器是 Dotfuscator Professional 版本 4.6.1010 或更高版本。 Dotfuscator 能够直接读取 ClickOnce 部署 list 作为输入、混淆程序集并输出混淆的程序集和完全更新的 list 文件。请参阅here为起点。

关于visual-studio - 是否可以混淆在 Visual Studio 2008 中创建的 ClickOnce 应用程序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2178476/

相关文章:

c - 为什么英特尔 SpeedStep 会影响执行周期数?

.NET - 单击一次/智能客户端应用程序 - 浏览器 Cookie 等效项?

winforms - 利用 Windows Azure 进行 ClickOnce 发布

c++ - 在 Visual Studio 2017 上无法使用 x64 Debug模式进行 opencv3.2 编译

git - Visual Studio Online 计划生成找不到我的分支

visual-studio - 如何从 Visual Studio 项目中删除 Typescript 支持?

C++ 5维 vector ?

c++ - 使用 CUDA 的 Thrust 库进行数组缩减

visual-studio-2008 - 是否有 ReSharper 模板来生成基本方法?

c# - 在 Windows 窗体应用程序中访问以自定义文件类型保存的数据