VB 代码不会在断点处停止
Posted
技术标签:
【中文标题】VB 代码不会在断点处停止【英文标题】:VB Code does not stop at breakpoints 【发布时间】:2012-08-24 00:06:27 【问题描述】:所以,我正在编写一个 Office 2010 加载项。我的代码可以正常运行,但想单步执行一段代码。我添加了断点并点击调试。 Word 启动时加载了加载项。这是我在调试窗口中看到的:
'WINWORD.EXE'(托管 (v4.0.30319)):已加载 'C:\Windows\Microsoft.Net\assembly\GAC_32\mscorlib\v4.0_4.0.0.0__b77a5c561934e089\mscorlib.dll' 程序 '[3280] WINWORD.EXE: Managed (v4.0.30319)' 已退出 代码-1073740791 (0xc0000409)。
我可以与加载项(自定义功能区)交互,但代码永远不会在断点处停止。我一直在网上搜索并尝试了多种方法,但似乎无法使其正常工作。
想法?
【问题讨论】:
您是处于调试模式还是发布模式? 这是一个 STATUS_STACK_BUFFER_OVERRUN 异常。由超出堆栈帧末尾的非托管代码写入触发。这是一种防病毒保护措施,进程立即终止。很明显,您将很难找出为什么会发生这种情况,这肯定不是您编写的代码。您需要 Microsoft 支持来帮助您诊断它。当您以 .NET 3.5 为目标时,它可能不会发生 【参考方案1】:我不知道为什么它认为进程已经结束——我从来没有调试过 Office 加载项——但是,如果他们没有其他选择,你可以随时添加一个 Debugger.Break()
调用到你的代码。这将强制该进程在遇到该行时调出您的调试器并让您跟踪已经运行的进程。但是,在编译程序集的发布版本之前,您必须小心删除该行。
【讨论】:
以上是关于VB 代码不会在断点处停止的主要内容,如果未能解决你的问题,请参考以下文章
Android Studio 的调试器不会在库模块中的断点处停止