gpt4 book ai didi

.net - 如何对 ClickOnce 使用混淆?

转载 作者:行者123 更新时间:2023-12-03 14:41:56 24 4
gpt4 key购买 nike

如果有人会发布 ClickOnce版本,怎么会被Dotfuscator混淆?

最佳答案

您可以使用 Dotfuscator 的商业版本通过将部署 list (“foo.application”)添加为 Dotfuscator 项目的输入来自动混淆 ClickOnce 应用程序。 Dotfuscator 将允许您向 ClickOnce 应用程序中包含的程序集添加任何必要的排除项,并将创建包含混淆程序集的更新部署和应用程序 list 。

Visual Studio(包括 Visual Studio 2010)中包含的免费版 Dotfuscator 没有自动混淆 ClickOnce 应用程序的功能。为了获得功能正常的混淆 ClickOnce 应用程序,您需要重新创建或更新 ClickOnce list ,因为混淆会更改程序集的签名。

您可以使用mage.exemageui.exe (包含在 Windows/.NET SDK 中)以更新 ClickOnce list 。如果您要使用 mage.exe,您需要注意不能在 ClickOnce 选项中使用“使用 .deploy 文件扩展名”选项,因为它无法识别它。

假设您的 ClickOnce 应用程序名为“Foo”并且版本为 1.0.0.0,您将要遵循的过程是:

  • 将 ClickOnce 应用程序发布到磁盘上的目录
  • 运行 Dotfuscator CE 并从项目的 bin 目录中添加要混淆的程序集
  • 混淆程序集。默认情况下,经过混淆的程序集将放入名为“Dotfuscated”的子目录中。
  • 使用 sn.exe 退出您的混淆程序集(仅当您最初对其进行强命名时)
  • 在 ClickOnce publish\Application Files\Foo_1_0_0_0 目录
  • 中复制混淆的程序集。
  • 更新应用程序 list 并将其退出:

    mage.exe -Update "Application Files\Foo_1_0_0_0\Foo.exe.manifest"-CertFile "c:\Foo\foo.pfx"-Password 密码
  • 更新部署 list 并将其退出:

    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/

    24 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com