我有一个我试图混淆的应用程序。在进行非模糊处理时,程序会发出NLog日志记录消息,但在模糊处理后,即使应用程序的其余部分按预期运行,它也不会生成任何消息。我尝试了几个混淆器,他们有相同的症状。有没有人有任何建议的地方。我生成了NLog内部日志记录工具,它们看起来完全相同。我的配置很简单:
// enable internal logging to the console
InternalLogger.LogToConsole = true;
// enable internal logging to a file
InternalLogger.LogFile = "log.txt";
// set internal log level
InternalLogger.LogLevel = LogLevel.Trace;
LogTarget = new MemoryTarget();
LogTarget.Layout = "${message}";
NLog.Config.SimpleConfigurator.ConfigureForTargetLogging(LogTarget, LogLevel.Trace);
答案 0 :(得分:1)
最有可能的是,NLog以某种方式使用Reflection,导致模糊处理程序集无法记录。
你是在混淆NLog程序集还是只是你自己的程序集?
尝试在混淆工具中使用“符号重命名”来查看它是否有所作为。如果它有效,那么您就知道原因,并且可以向下钻取以排除重命名相关的类/成员。