通告!vs 在64位系统上一个小bug

wanghui0380 2012-12-12 03:08:52
今天偶然发现,在64位操作系统上winform的Form_load写入
throw new Exception("xx");
并不会弹出异常,form本身能够正常运行,但是后续代码不再执行

查询了一下相关说明,发现是64位系统的固有bug,原本和vs无关。只是这里通告一下,各位同学在调试的时候要注意了。(虽然vs并没有中断运行,但是在输出窗口还是能看到异常信息,所以同学们在调试的时候的注意看输出窗口)

官方说明:
This is a known issue on 64-bit OS platform. The reason is that the 64bit OS core does not allow user mode exception through kernal mode stacks. The exception is swallowed by OS sliently. That happens in FormLoad handler, because it is called in an OS callback. 32bits OS doesn't do this, so it doesn't repro there.

The OS team is investigating related issues. In the mean time, you do have to work around this issue. Turning on "Stop on first chance exception" will make the debugger to stop in this scenario. But it does make the debugger to stop very often, so you might want to do this only when you find a problem.


ps:这个bug好像已经出来很久了,只是很少有人提过,估计大家写的代码都比较标准,基本不会在Form_load就异常:)
...全文
572 10 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
nanoxue 2012-12-13
  • 打赏
  • 举报
回复
还没碰到,试试。
YapingXin 2012-12-12
  • 打赏
  • 举报
回复
Good sharing!
ohkuy 2012-12-12
  • 打赏
  • 举报
回复
我还没有在加载的时候异常
敌敌畏耶 2012-12-12
  • 打赏
  • 举报
回复
谢谢提醒····
crystal_lz 2012-12-12
  • 打赏
  • 举报
回复
再次突然性的想起 貌似这种情况不止一次遇到了 以前 在load里面写了一堆代码 可是一出来 去只执行了前面部分 调试的时候一看 原来执行到 某一步的时候 出现了异常直接就跳出 load 了、、、如果在里面 放一个try catch 就能把异常信息搞出来 反正编译器不会停下来、、、
蒋晟 2012-12-12
  • 打赏
  • 举报
回复
这个是被用户强烈要求加入Windows 7的Program Compatibility Assistant的功能,用来兼容旧程序的,windows 7发布的时候有演示过。新的支持Windows 7的程序可以用supportedOS声明或者SetProcessUserModeExceptionPolicy函数把这个功能关掉。
crystal_lz 2012-12-12
  • 打赏
  • 举报
回复
果断 刚才就试了一下 果然Form正常弹出 也没有包啥错 可后面的执行起来就问题了 - -!、、就在刚才不就 我也遇到一蛋疼问题 不过这个不能算是vs的错了 在写控件的时候 代码里面有错误 控件内部使用的数组 果断越界了 控件一加到界面上去 果断编译器崩溃关了 然后再打开一加载的时候继续崩溃、、在那里蛋疼的搞了半天、 说道这个 突然想起 上次发现窗体 你在构造器里面写 this.Enable = false 和 load里面写 和 放一个按钮点击执行事件里面写 呈现出来的禁用的效果也不同 构造器里面的 出来 窗体还可以拖动点击窗体也不发出系统警告声音 - -! 不知道是因为放到不同地方执行的先后顺序的结果所致还是啥的
  • 打赏
  • 举报
回复
不开发winform的飘过
51Crack 2012-12-12
  • 打赏
  • 举报
回复
放在Form1中(启动窗体)也会报错
51Crack 2012-12-12
  • 打赏
  • 举报
回复
win8(64)+vs2012 Form1调用Form2,调试时直接退出,正常运行时出错,没出现跳过的情况
思索者学校系统网站帮助说明: 一、语言开发: 一套由ASP ACC开发的学校网站管理系统,蓝色风格时尚大方。网站系统没有复杂的安装设置要求, 简单到只要能打字就能建站,适合几乎所有行业的人员使用。特点:简单,极美! 注:网站菜单栏目,请勿在后台删除,首页中的通知通告栏目,请勿在后台删除 其它的小类,可以添加/修改和删除   二、后台账号和密码: 后台目录为xy35 账号默认的是admin,密码是admin888   三、网站首页说明 1.右侧的热点信息为点击TOP,点击数量越大越是靠前。 2.最底部的精彩图文部分,只要新闻有缩略图片即可显示。   四、关于后台部分 1.网站配置/新闻管理为常规内容,流程简单易懂,新闻需要先添加分类 2.单页面管理 单页分类是指的类是 类似联系我们等的分类 点击后台的添加单页后,选择分类,会在前台对应的栏目,自动出现相应的单页连接! 友情连接部分,如果为文字连接,LOGO地址可为空,否则为150px * 50px图片   五、功能简介: 1.信息设置:设置网站标题,关键字,网站说明,网站底部版权等。 2.友情链接功能。 3.碎片管理功能:适合在网站任何一个位置加图片,视频,广告等。 4.网站管理员:添加和删除管理员。 5.网站管理员权限分配。 6.新闻的分类添加和删除,新闻的内容添加和删除。 7.单页的添加和删除。 8.学生报名系统。   六、商业版和免费版的区别: 1.免费版不能再添加管理员。 2.免费版没有友情链接,碎片,报名三个功能。 3.免费版没有官方除BUG问题外,不提供任何技术支持。 4.商业版提供一年升级和免费技术服务,全版开源软件一套。   七、更新说明: 1.修复前台幻灯片遮挡导航二级菜单的问题。 2.修复后台信息配置里网站版权在WIN7下无法写入的问题。 3.修复添加和编辑新闻内容页在WIN7无法写入的问题。 4.修复添加和编辑单页在WIN7下无法写入的问题。   八.关于版权 网站源码程序属于思索者科技开发,整体源码归思索者科技所有,可进行二次开发和使用,但不能对外出售。        相关阅读 同类推荐:企业网站源码

111,098

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • AIGC Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧