问题标签 [confuserex]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
272 浏览

c# - 访问我自己困惑的 dll 的公共成员

我之前在这里问过一个问题,关于保护应用程序不被盗,我已经得到了答案。

我决定使用免费的confuserEX,它可以在 WPF 中正常工作。但是当我检查文档时,我注意到它用其他无意义的字符串重命名了代码中的所有字符串。

我的问题是,如果将任何字符串替换为另一个无意义的字符串,我如何使用自己的 dll 访问其中的类的公共成员或函数?

0 投票
2 回答
1350 浏览

c# - ConfuserEx:单声道上的 System.TypeInitializationException

我无法让我的混淆应用程序在单声道上运行。单声道上未混淆的作品。当我在 win7 上使用 .net 框架时,它在两种变体中都没有问题。

这是我得到的例外:

未处理的异常:System.TypeInitializationException:“<Module>”的类型初始化程序引发了异常。---> System.NullReferenceException:对象引用未设置为位于 .‮‮‎‫‎âªâ€â€‹â€ªâ€«âªâ¬â€Žâªâ¯â 的对象实例€«... €® () <0x40884310 + 0x00874> in :0 at ..cctor () <0x40884100 + 0x00017> in :0 --- 内部异常堆栈跟踪结束 --- 在 Vintagestory.Server.Program.Main (System.String [] args) <0x408814c0 + 0x002bb> in :0 [ERROR] FATAL UNHANDLED EXCEPTION: System.TypeInitializationException: '' 的类型初始化程序引发了异常。---> System.NullReferenceException: 对象引用未设置为对象的实例。

该异常似乎发生在它必须从在同一进程中也被混淆的外部库加载其他代码时。

我怎么能去调试/修复这个?

更新:似乎也发生在 Windows Mono

Update2:这里也是一个 github 问题条目,其中包含更多详细信息:https ://github.com/yck1509/ConfuserEx/issues/535

0 投票
0 回答
81 浏览

winforms - ConfuserEx Winforms 自托管 WebAPI

我试图混淆一个 Winforms 自托管 WebAPI 项目。我正在为一个 exe 和两个 dll 文件使用 ConfuserEx UI。没有封隔器和设置为正常。

当exe混淆时,执行时出现以下错误。

System.EntryPointNotFoundException:尝试加载应用程序时发生以下错误。

在类'???????????????????????????????????????中找不到“配置”方法?,MyApp,版本=1.0.0.0,文化=中性,PublicKeyToken=null'。

似乎找不到启动类配置方法来启动网络服务器。

我对 ConfuserEx 完全陌生。

谢谢

0 投票
1 回答
300 浏览

c# - 使用 ConfuserEx 自动混淆内部和私有成员

如果我使用ConfuserEx,它会自动混淆所有内部和私有成员,而无需使用声明性混淆吗?

维基

https://github.com/yck1509/ConfuserEx/wiki/Documentation

描述了声明性混淆,但不描述如果不使用会发生什么。如何在没有声明性混淆的情况下做到这一点?

0 投票
4 回答
4231 浏览

c# - ConfuserEx 与 Visual Studio 安装程序设置项目,混淆不能正常工作?

我创建了单层 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. 反编译器显示了我项目的确切来源。所以这意味着混淆过程中有问题。

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

0 投票
0 回答
642 浏览

c# - 如何正确使用 ConfuserEx 源代码

我从以下网址下载“ConfuserEx”源代码:https ://github.com/yck1509/ConfuserEx

但如果我打开项目我有 101 错误!如何解决错误?我想我有错误或其他我不知道的东西。

我尝试修复一些错误,但我不能,我在谷歌上搜索这个问题,我没有看到我解决了。

一些错误:

(您是否缺少 using 指令或程序集引用?) 1>C:\Users\THE\Desktop\ConfuserEx-master\Confuser.Core\Services\CompressionService.cs(149,61,149,70):错误 CS0246:类型或命名空间名称“IDnlibDef”找不到(您是否缺少 using 指令或程序集引用?) 1>C:\Users\THE\Desktop\ConfuserEx-master\Confuser.Core\Services\CompressionService.cs(149, 3,149,12):错误 CS0246:找不到类型或命名空间名称“MethodDef”(您是否缺少 using 指令或程序集引用?) 1>C:\Users\THE\Desktop\ConfuserEx-master\Confuser。 Core\Services\RuntimeService.cs(8,3,8,12):错误 CS0246:找不到类型或命名空间名称“ModuleDef”(是否缺少 using 指令或程序集引用?) 1>C:\用户\THE\Desktop\ConfuserEx-master\Confuser。Core\Services\RuntimeService.cs(11,10,11,17):错误 CS0246:找不到类型或命名空间名称“TypeDef”(您是否缺少 using 指令或程序集引用?) 1>C:\ Users\THE\Desktop\ConfuserEx-master\Confuser.Core\Services\RuntimeService.cs(33,3,33,10):错误 CS0246:找不到类型或命名空间名称“TypeDef”(您是否缺少使用指令或程序集引用?) 1>C:\Users\THE\Desktop\ConfuserEx-master\Confuser.Core\Services\MarkerService.cs(9,23,9,32):错误 CS0246:类型或命名空间名称'找不到 IDnlibDef'(您是否缺少 using 指令或程序集引用?) 1>C:\Users\THE\Desktop\ConfuserEx-master\Confuser.Core\Services\MarkerService.cs(23,20,23, 29): 错误 CS0246: 类型或命名空间名称 'IDnlibDef'找不到(您是否缺少 using 指令或程序集引用?) 1>C:\Users\THE\Desktop\ConfuserEx-master\Confuser.Core\Services\MarkerService.cs(37,24,37,33) : 错误 CS0246: 找不到类型或命名空间名称“IDnlibDef”(您是否缺少 using 指令或程序集引用?) 1>C:\Users\THE\Desktop\ConfuserEx-master\Confuser.Core\Services\ MarkerService.cs(42,44,42,53):错误 CS0246:找不到类型或命名空间名称“IDnlibDef”(您是否缺少 using 指令或程序集引用?) 1>C:\Users\THE\ Desktop\ConfuserEx-master\Confuser.Core\Services\MarkerService.cs(61,13,61,22):错误 CS0246:找不到类型或命名空间名称“IDnlibDef”(您是否缺少 using 指令或程序集参考?)1>C:\Users\THE\Desktop\ConfuserEx-master\Confuser.Core\Services\MarkerService.cs(68,17,68,26):错误 CS0246:找不到类型或命名空间名称“IDnlibDef”(您是否缺少使用指令还是程序集引用?) 1>C:\Users\THE\Desktop\ConfuserEx-master\Confuser.Core\Services\MarkerService.cs(75,37,75,46):错误 CS0246:类型或命名空间名称找不到“IDnlibDef”(您是否缺少 using 指令或程序集引用?) 1>C:\Users\THE\Desktop\ConfuserEx-master\Confuser.Core\Services\TraceService.cs(10,23,10 ,32): 错误 CS0246: 找不到类型或命名空间名称“MethodDef”(您是否缺少 using 指令或程序集引用?) 1>C:\Users\THE\Desktop\ConfuserEx-master\Confuser.Core \Services\TraceService.cs(23,28,23,37):错误 CS0246:找不到类型或命名空间名称“MethodDef”(您是否缺少 using 指令或程序集引用?) 1>C:\Users\THE\Desktop\ConfuserEx-master\Confuser.Core\Services\TraceService.cs( 40,21,40,30):错误 CS0246:找不到类型或命名空间名称“MethodDef”(您是否缺少 using 指令或程序集引用?)

0 投票
1 回答
1150 浏览

c# - 如何检查 CSharp 项目文件中的混淆是否成功

我可以在我的 CSharp 项目文件中包含代码来检查 ConfuserEx 是否正确执行,如果没有则终止编译过程?也许使用反射来检查类名是否仍然存在(即没有被混淆)?

更新:这是.csproj文件中调用混淆例程的代码:

0 投票
1 回答
403 浏览

xamarin - 使用 ConfuserEx 在 Xamarin 表单中进行声明性混淆

我正在使用我用 ConfuserEx 混淆的 Xamarin.Forms 创建一个 Android 应用程序。我想像在这个例子中那样使用声明性混淆,这样我就可以为我的每个类更改混淆属性。

但是,Xamarin.Forms 中的 System.Reflection 命名空间无法识别 System.Reflection.ObfuscationAttribute 类。我需要使用另一个 NuGet 包还是我遗漏了什么?

否则,有没有办法以不同的方式在不同的类中包含或排除混淆功能?

0 投票
0 回答
1158 浏览

c# - ConfuserEx - 无法解决仅对发布的依赖

使用 ConfuserEx - 当我正常构建文件时我没有问题,但是当我处于发布模式时,我收到以下错误:

[错误] 无法解决“TheProgram.exe”的依赖关系。1> 异常:dnlib.DotNet.AssemblyResolveException:无法解析程序集:mwqJVcPLiNUjsUEcAQtUUhNeTADJ,版本=0.0.0.0,Culture=neutral,PublicKeyToken=null 1> 在 dnlib.DotNet.Extensions.ResolveThrow(IAssemblyResolver self,IAssembly 程序集,ModuleDef sourceModule)在 E:\Source\Public\Confuser2\dnlib\src\DotNet\IAssemblyResolver.cs:line 113 1> 在 Confuser.Core.ConfuserEngine.Inspection(ConfuserContext context) 在 e:\Source\Public\Confuser2\Confuser.Core\ ConfuserEngine.cs:第 264 行

通常对于这些类型的错误,您必须<probePath>在项目构建文件中包含程序集,但这似乎是对已经混淆的东西的内部依赖,因为程序集名称已经被混淆了。

任何人都可以照在这上面的任何光都将不胜感激。

0 投票
1 回答
808 浏览

c# - ConfuserEx CLI 未指定输出目录

我的 ConfuserEx CLI 工具有问题。我想从这样的 C# 程序启动 CLI:

strConfuserExFilePath = D:\Examples .Net\Diagramm\TEST\Haupt-Projekt\packages\ConfuserEx.Final.1.0.0\tools\Confuser.CLI.exe

strConfuserExProjectFilePath = D:\Examples .Net\Diagramm\TEST\Haupt-Projekt\TEST\bin\x86\Debug\ConfuserEx.crproj

我的 .crproj 文件如下所示:

当我运行该代码时,CommandBox 消失得如此之快,以至于我无法读取错误。所以我坚持我会通过命令行启动 CLI 来看看会发生什么。当我执行以下操作时:

我得到错误

Confuser.Ex.CLI:未指定输出目录

奇怪的是,如果我运行相同的代码但在 PowerShell 中它可以工作:

为什么它适用于 PowerShell 但不适用于 C#。而且我已经尝试在我的 C# 代码中添加 -n|-noPause 参数。

编辑 我尝试从我的 C#-Code 执行 PowerShell,但仍然出现相同的错误消息。