2

我创建了单层 Windows 窗体应用程序并添加了一个 Visual Studio 安装设置项目来使用 Visual Studio 2013 创建安装向导。

所以我的应用程序包含一个 .exe 文件和多个 .dll 文件(SQLite、EntitiyFramework 等)和其他发布项目。我正在尝试使用 ConfuserEx 混淆我的代码。

  1. 为此,首先我使用 Visual Studio 2013 创建了发布版本。
  2. 使用ConfuserEx混淆了我的发布 .exe 文件。这一步工作正常。我试图反编译混淆的 .exe 文件并得到不可读的代码文件。这意味着,该过程运行良好。
  3. 然后我用发布 exe 文件 (..\bin\Release\appName.exe) 替换了混淆的 exe 文件。
  4. 然后,重建安装程序设置项目以生成 setup.exe 文件。
  5. 然后我使用 setup.exe 安装了软件。安装成功。
  6. 使用 .NET Reflector 9 反编译已安装的应用程序 exe
  7. 反编译器显示了我项目的确切来源。所以这意味着混淆过程中有问题。

有谁知道如何解决这个问题?

4

4 回答 4

4

我发现问题。

我正在替换 ..bin\Release\AppName.exe 文件而不是 ..obj\Release\Appname.exe

现在它工作正常。

谢谢。

于 2017-04-08T13:50:39.803 回答
1

我试过你的方法,它只工作了一次。我找到了更好,更简单的方法来解决这个问题:

  1. 在 VS 安装程序中选择主输出文件夹,右键单击。
  2. 选择排除过滤器。表单排除过滤器窗口,选择添加过滤器。
  3. 写下你的program.exe。
  4. 现在选择您的 VS 安装程序项目,右键单击。
  5. 选择添加文件.. 浏览您困惑的 exe。
  6. 构建完成后,将安装混淆的 exe。

它对我很有效

于 2017-11-01T08:02:02.703 回答
0

尝试和测试了以上所有方法,失败 -> 现在看看这种方式:(一个较小的)

  1. 在 VS 安装程序中选择主输出文件夹,双击
  2. 选择您的 program.exe 并将其删除。(是的,删除它)
  3. 现在选择您的 VS 安装程序项目,右键单击。
  4. 选择添加文件..
  5. 浏览您的困惑/混淆的exe。-> 选择它。

构建完成后,将安装混淆/混淆的 exe。

上述类似解决方案中的问题是:当您排除 exe时,它​​根本不会包含可执行文件。

因此,您只需删除从项目输出中生成的 exe并将其替换为您的混淆 exe。

谢谢。

于 2020-03-25T18:17:02.730 回答
0

我试过你的方法,它只工作了一次。我找到了更好,更简单的方法来解决这个问题:

  1. 在 VS 安装程序中选择主输出文件夹,右键单击。
  2. 选择排除过滤器。
  3. 表单排除过滤器窗口,选择添加过滤器。
  4. 写下你的program.exe。
  5. 现在选择您的 VS 安装程序项目,右键单击。
  6. 选择添加文件..
  7. 浏览您困惑的 exe。

构建完成后,将安装混淆的 exe。

于 2017-04-15T11:06:04.540 回答