我正在用C++编写一个Win32服务。我有一个调用DebugBreak()(除其他外)的自定义Assert宏。当我在Vista下运行我的服务时,服务在到达DebugBreak()调用(一个int 3汇编操作码)时崩溃,显示vista崩溃对话框。错误代码是80000003(硬编码断点)。为什么我的服务在Vista上DebugBreak()崩溃?
正常情况下,我期望在没有调试器连接的情况下,我的服务运行在DebugBreak()调用上,而不需要执行任何操作。它为什么会崩溃?是否有可能改变设置以便继续运行?
当然这两个答案都是正确的。感谢您的帮助,我不知道DebugBreak()会导致异常。 – vividos 2009-01-23 12:15:22