【发布时间】:2020-05-20 15:11:51
【问题描述】:
将我们庞大的分布式系统部署到我们的一个客户后,我们遇到了意外错误。在调查期间,我们将导致错误的组件替换为添加了一些诊断代码的组件。我们使用的 dll 是在调试模式下构建的。突然之间,一切都奏效了!
用发布版本(带有诊断代码)替换调试 dll 会使其再次崩溃。
我们的代码中没有预编译器指令、条件调试属性等。该问题已在两个不同的安装站点中发现,而在其他几个站点中都可以正常工作。
(该项目混合了 C# 和 VB.NET,麻烦的程序集是 VB.NET..,如果这有什么不同的话)
所以问题是:在这种情况下你会怎么做?通常是什么原因?欢迎提供有关调试此问题的任何建议。
【问题讨论】:
-
这可能有助于提供有关问题的一些详细信息,而不是一般的“它在调试中有效但在发布中无效。”什么是“它”,什么是“它”?
-
我还不能确定,但它是一个空引用异常(所以这并没有真正的帮助,对吧!?)。
-
可能,连同调用堆栈。检查调用堆栈是您应该做的第一件事。