C# 断言/重试,32位和64位的不同行为
我正在使用现成的WindowsFormsApplication。我唯一添加的是C# 断言/重试,32位和64位的不同行为,c#,debugging,C#,Debugging,我正在使用现成的WindowsFormsApplication。我唯一添加的是Form1\u Load事件处理程序,如下所示(Visual Studio Premium 2013): 对于64位调试构建:当我点击一个debug.Assert(false)并按下Retry按钮时,调试器会打断相应的源代码行 对于32位调试构建:当我点击与上面完全相同的行时,会显示消息框,但点击重试按钮不会中断 问题1:首先,为什么行为会有所不同 问题2:如何使32位调试构建在点击重试时中断 编辑 我确实观察到了上
Form1\u Load
事件处理程序,如下所示(Visual Studio Premium 2013):
debug.Assert(false)
并按下Retry按钮时,调试器会打断相应的源代码行- 我确实观察到了上述在Windows 8.1、Visual Studio Premium 2013(版本12.0.30723.00更新3)上的行为
- 我不观察上述在Windows 8.1 Visual Studio Premium 2013(版本12.02.21005.1 REL)上的行为。具体地说,当对32位调试构建点击“重试”时,调试器会直接进入代码。包含
的行被涂成黄色,而64位调试版本中的同一行被涂成绿色Debug.Assert
Debug.Assert(false)
的行是黄色的,64位的是绿色的。)有趣的是
private void Form1_Load(object sender, EventArgs e)
{
Debug.Assert(false);
}