当我创建一个新项目时,我对未处理的异常会有一个奇怪的行为.这就是我可以重现问题的方法:
1)创建一个新的Windows窗体应用程序(C#,. NET Framework 4,VS2010)
2)将以下代码添加到Form1_Load处理程序:
int vara = 5, varb = 0;
int varc = vara / varb;
int vard = 7;
Run Code Online (Sandbox Code Playgroud)
我希望VS中断并在第二行显示未处理的异常消息.但是,会发生的是第三行只是跳过而没有任何消息,应用程序一直在运行.
我现有的C#项目没有这个问题.所以我想我的新项目是用一些奇怪的默认设置创建的.
有没有人知道我的项目有什么问题?
我试过检查Debug-> Exceptions中的方框.但即使我在try-catch块中处理异常,执行也会中断; 这也不是我想要的.如果我没记错的话,在这个对话框中有一个名为"未处理的异常"的列或者类似的东西,这会让我感到非常兴奋.但在我的项目中只有一列("Thrown").
我们有一个在客户端运行的应用程序正在显示奇怪的行为.在白天的随机时间,某些表单上的"确定"按钮(调用Form.Close方法)不会导致表单关闭.我的意思是用户将单击按钮,在跟踪中它将显示已调用Form.Close但表单将不会关闭.
奇怪的是,表单本身仍然是响应式的,因此他们可以单击表单上的任何按钮,按钮后面的代码将执行,但表单不会关闭.
这种状态持续几秒到几分钟.然后,表格突然开始处理并消失.真奇怪.
所以回顾一下,发生以下情况:
Form.ShowDialog() - >表格显示Form.Close() 被叫 - >用户点击了关闭按钮Form.ShowDialog注意事项:
explorer.exe进程已在PC上停止,这是否会对表单的行为产生影响?我们正在安排重建PC.我的问题是,是否有人知道可能导致上述行为的情况?
我不是Forms的专家,但据我所知,当你调用时Form.Close,表单不会立即关闭,当前调用Close的方法首先完成,然后另一个进程触发表单开始关闭和处理.
这可能与explorer.exe未运行的进程有关吗?
任何见解将不胜感激.
***编辑
另请注意,我们无法复制该问题,它会在客户端随机发生.
它是什么意思:"第一次机会异常在:0x000006BA:RPC服务器不可用"?
当我使用套接字连接时,此调试消息出现在visual studio调试器的Debug输出中,但我不知道什么操作启动此消息...