以下问题让我很困惑:我有一个 WinForms 应用程序,它曾经可以正常工作。然而,在 Windows7 上,我的 MainForm 的“加载”事件处理程序永远不会被调用。我试着用谷歌搜索了一下,发现了检查事件是否正确连接到处理程序的建议(它是),其次是尝试覆盖 OnLoad 方法。OnLoad 覆盖被调用一次(我认为,已经大量调试),然后没有进一步。为什么不调用 OnLoad 覆盖?我可以尝试什么来解决这个问题?
最好的祝福!
以下问题让我很困惑:我有一个 WinForms 应用程序,它曾经可以正常工作。然而,在 Windows7 上,我的 MainForm 的“加载”事件处理程序永远不会被调用。我试着用谷歌搜索了一下,发现了检查事件是否正确连接到处理程序的建议(它是),其次是尝试覆盖 OnLoad 方法。OnLoad 覆盖被调用一次(我认为,已经大量调试),然后没有进一步。为什么不调用 OnLoad 覆盖?我可以尝试什么来解决这个问题?
最好的祝福!
我想我解决了!
事实证明,这与 OnLoad 事件特别无关。相反,它是由 OnLoad 事件处理程序中的代码引起的,该处理程序使用来自 64 位上下文的 32 位 DLL。我在bytes.com/topic/c-sharp/answers/...上找到了解决方案
令人困惑的是,32 位/64 位问题在进入事件处理程序时立即导致异常,因此事件处理程序内的断点从未被命中。我也没有收到异常的弹出窗口,因为应用程序有一个“CurrentDomain_UnhandledException”处理程序......但那是另一回事。