首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >调试混淆代码

调试混淆代码
EN

Stack Overflow用户
提问于 2012-12-29 19:42:08
回答 2查看 2.5K关注 0票数 1

我有一个用EazFuscator.NET混淆的应用程序。然而,调试这是非常不可能的(即使它是一个小的应用程序),例如,这是一个错误报告:

代码语言:javascript
复制
Index was out of range. Must be non-negative and less than the size of the collection.
Parameter name: index

Stacktrace:
at System.ThrowHelper.ThrowArgumentOutOfRangeException(ExceptionArgument argument, ExceptionResource resource)
at System.ThrowHelper.ThrowArgumentOutOfRangeException()
at .(Object , RunWorkerCompletedEventArgs )
at System.ComponentModel.BackgroundWorker.OnRunWorkerCompleted(RunWorkerCompletedEventArgs e)
at System.ComponentModel.BackgroundWorker.AsyncOperationCompleted(Object arg)

它清楚地说明了错误是在后台工作进程中引起的。由于它是一个小应用程序,我感觉我知道它在哪里,但这只是因为它是一个小应用程序。

我已经附加了来自用户的配置文件,并且有一个复选框可以在错误报告中包含一个屏幕截图。

有没有什么方法可以让我的调试变得更容易,同时仍然拥有模糊的代码?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-12-29 19:58:30

我也有过在小的混淆程序上调试客户端问题的经验。我可以给你两个建议:

1)为您的程序设置可配置的详细日志,客户端可以在设置中启用。您可以使用此日志收集大量信息(例如:每个重要方法的入口点以及传递给它的参数)。一般来说,在你的程序中有一个良好的日志记录可以大大节省调试客户端(而不仅仅是客户端)问题的时间。

2)此外,如果用户允许您访问环境,您可以临时使用未混淆的DLL重新安装应用程序(或更改特定的DLL)。调试完成后-只需恢复更改后的DLL即可。

票数 3
EN

Stack Overflow用户

发布于 2015-02-12 02:14:16

大多数混淆器都会生成映射文件,显示原始类/方法名和混淆后的类/方法名之间的映射。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/14081297

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档