c#调试状态下的无故退出 10

使用c#调试程序时,有时候会遇到自动退出的现象,经查该代码无任何异常,怀疑是引用dll不一致造成,但是本解决方案未出现该不一致的情况,我使用的是。net2008,有没有人... 使用c#调试程序时,有时候会遇到自动退出的现象,经查该代码无任何异常,怀疑是引用dll不一致造成,但是本解决方案未出现该不一致的情况,我使用的是。net2008,有没有人遇到类似的问题,并期待高手给予解决。

项目较大,工程可能涉及到几十个,且相关dll互相调用较多,目前现象是在三维dll内某个构造函数跳出,但我可以肯定这个构造函数及该类本身并没有问题,因为主框架使用二维的早期版本dll时并没出问题,后来更新二维dll库引起现在的三维dll调试退出。最关键问题是没有捕捉到任何异常,这个比较郁闷。

目前找到了应付式的解决方法:先初始化二维,再初始化三维;或者在三维初始化后马上new一个三维方面的Icon(即之前在构造函数退出的类),这样对二三维的顺序就没要求了。不满足以上条件的,都要在使用过程中无提示无异常代码的退出调试。
展开
 我来答
半清闲18
2011-09-16
知道答主
回答量:26
采纳率:0%
帮助的人:33.3万
展开全部
前几楼已经说了很多情况了,我想提醒你是否程序更换了目录 或调用 的dll文件移动或丢失。、
如果还不能判断问题,最好能单步调试,看是哪一行代码退出,再具体分析。
如果方便可以把代码贴出来这样有利于大家分析问题。
我也用。net 2008 c#,遇到过目录变量程序退出的情况,你可以参考。
追问
怀疑是最底层dll调用版本不一致,但是嵌套调用过于复杂,正在查找
追答
建议你把复杂问题简单化,可以考虑做一个简单程序,只调用二维dll和三给dll 这2个文件,看是否会出现同样问题。也有可能是新更新的dll文件存在什么问题,建议可以找一下这方面的问题。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
287641467
2011-09-16 · TA获得超过765个赞
知道小有建树答主
回答量:850
采纳率:0%
帮助的人:697万
展开全部
程序直接退出考虑是否使用P/Invoke,P/Invoke参数签名如果不一致可能导致程序直接退出,一般情况下会提示出来签名不一致.

检查标有[DllImport]类似的代码
追问
该构造函数是从最底层写的,没有找到您所描述的情况
追答
跟你你上边的描述,引用有外部的DLL  所以很可能是外部DLL发生堆栈上的错误 导致程序直接退出.一般程序直接退出可能的原因是发生"Error".所以你可以考虑检查下DLL,如果不是你们开发的 可以联系下开发商
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
sbin2565317
2011-09-16 · TA获得超过205个赞
知道小有建树答主
回答量:259
采纳率:100%
帮助的人:184万
展开全部
1, 删掉所有 try {} catch() 再调试,
2,重装系统

看似无聊的答案,其实蕴涵的是上善若水的 道理 给不给分 你看着办吧
更多追问追答
追问
单步跟到最基本的构造函数里,就跳出(无try,catch),另外重装系统也不可取,如果一个程序一定要挑系统(32位和64位的区别除外),那可能用户就只有自己了
追答
新建项目  代码最简   测试   如果问题依旧  请帖出你的原代码、
重装系统 并不是指net2008要挑系统,而是指你的系统在长久运行后,可能被“腐蚀”,这不怪2008 只怪微软自己的dll和com技术 哈哈
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
明城爵迹
2011-09-16 · 超过12用户采纳过TA的回答
知道答主
回答量:34
采纳率:100%
帮助的人:23.9万
展开全部
学习有一段时间的C#之后感觉,除了自己的代码逻辑错误会导致程序崩溃意外,还没有遇见您说的这样的问题?或许您应该截一张图片让我看一下。
追问
如果调试状态下,代码逻辑错误或者其他错误未捕捉异常的情况下,一般调试器会给出明确错误信息,比如异常类型和异常原因,但是我的程序什么都不提示,就直接跳出了调试,很郁闷。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
月之江南
2011-09-16 · TA获得超过203个赞
知道答主
回答量:221
采纳率:0%
帮助的人:156万
展开全部
控制台应用程序会有这种情况。
当你的程序里面没有任何关于要求用户输入字符的代码就运行,而且运行时点击的是那个绿色的三角形或按得是F5键,就会这样。如果按Ctrl + F5运行就不会出现这种情况
如果是窗体应用程序,很不好意思,我到目前为止好没有遇到这种情况,也不知道怎么解决
追问
是form程序,单步跟的
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 3条折叠回答
收起 更多回答(4)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式