惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

MyScale Blog
MyScale Blog
博客园 - 司徒正美
A
About on SuperTechFans
Vercel News
Vercel News
H
Hackread – Cybersecurity News, Data Breaches, AI and More
爱范儿
爱范儿
I
InfoQ
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
博客园_首页
Google DeepMind News
Google DeepMind News
T
Tailwind CSS Blog
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
F
Fortinet All Blogs
S
SegmentFault 最新的问题
阮一峰的网络日志
阮一峰的网络日志
D
Docker
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
G
Google Developers Blog
Stack Overflow Blog
Stack Overflow Blog
M
MIT News - Artificial intelligence
Jina AI
Jina AI
H
Help Net Security
量子位
IT之家
IT之家

博客园 - 杨义金

Csla One or more properties are not registered for this type unomp 矿池运行问题随记 矿池负载运行监测记录 MySql 数据库移植记录 后台服务运行后无故停止运行,原因不明 缓存过期时间的设置 Bitcoin 使用及配置记录 关于 CSLA 服务器部署WCF访问出错的问题 AR 不同 继承映射的问题总结 当事人角色 变更映射策略引起的问题 Castle ActiveRecord 二级缓存使用 异常记录 CastleActiveRecord在多线程 事务提交时数据库资源竞争导致更新失败的测试结果记录 WF4.0 工作流设计器 传入参数问题记录? Solving GitHub FetchHead (MergeConflict) in Visual Studio 2013 昆明光标科技有限公司简介 Castle.ActiveRecord 多对多关系 引发的错误处理 String PK StringBuilder,传说就是传说,只有动手实验,才能得出确定的答案 .net mvc Bundle 问题解决方案 .net 4.0 自定义本地缓存策略的不同实现
VS2013 抛出 stackoverflow exception 的追踪
杨义金 · 2015-12-23 · via 博客园 - 杨义金

本公司使用VWG、Caslte ActiveRecord、CSLA.net 、Quantz.net 等组件做为公司的开发基础,自2007年以来,一直工作正常,但最近(2015.12月)以来,打开MDAA项目时,VS 总是自动 崩溃(Crashed)后,自动启动,追踪调试后,只得到了 "StackOverflow", 堆栈溢出。

  知道了这个问题,但总是找不到原因应该如何处理:尝试的方法有:

      1、更新VS update5 ,故障依旧;

      2、更新 VWG 至 10.0.4,故障依旧;

      3、上VWG论坛中 啃英文发现有类似的问题反映,但只叫我们 引用正确的版本,而且问题 的发生场景也不大相同,先后清理 程序集的 缓存后,重启系统问题依旧。

      4、新建了 VWG 项目,并打开设计器,一切正常,百思不得其解。

      5、在MDAA中 有一个Form1 窗口,偶尓打开可以成功,但过不了 一分钟,什么也不动,故障依旧。

      6、怀疑 git 扩展之间有冲突,把 扩展关了,故障依旧。

      7、静静的分析了 一天,总觉得应该与VWG有关系,其它的都正常,一直在用,没有反映出什么问题,最近Win10自动升级后才出现的这个问题(也不知道Windows10升级都变更了些什么)。 

      8、把整个过程 反思了一遍,觉得应该是 win10自动升级后,改变了VS 或者 .net 以往类库的加载运行方式,以前都是正常的,现在出了问题,而新建的VWG项目却是正常的,为什么呢?

      9、带着这个问题,把PSI项目打开(引用 MDAA 类库),再打开项目中的 窗口或者用户控件,一切OK,因此 可以确定问题出在 MDAA中代码上,更确切的说出在 VWGHelper上,即VWG的扩展方法中。

最后锁定了故障源,变更代码为:

 if( _IsCopiedEmbededSource || context == null)

最后问题处理,一切OK,整个问题的耗时,三天。每天17小时。 这三天什么也没做成,您说 卖给客户的软件 只算最终的代码技术含量,背后要处理类似的问题何至千百,我的客户(上帝),算上这些付出,价格已经非常超值了。

问题并没有完全解决,打开设计器时,可以打开了,但如果 要显示 Toolbox时,VS2013 故障依旧。

  1、新建了VWG项目,新建控件、窗体都正常。

2、在控件、窗体中 添加 控件时,都正常。

3、在PSI项目中打开控件或者窗体,再显示 ToolBox 时,也正常,但在 MDAA中 还是 故障退出。 

4、在WinForm 中打开窗体与控件时,都是正常的。

5、至此,问题可以确认在 MDAA VWGUI 项目中,在VS 反射项目中有哪些控件时出错。