年后第一问,.NET高手进来看

yuetoby 2006-02-05 08:18:18
程序运行一段时间后,发生自动退出情况。错误如下:
异常:Object reference not set to an instance of an object.
方法:TranslateMessage
堆栈: at System.Windows.Forms.UnsafeNativeMethods.TranslateMessage(MSG& msg)
at System.Windows.Forms.ComponentManager.System.Windows.Forms.UnsafeNativeMethods+IMsoComponentManager.FPushMessageLoop(Int32 dwComponentID, Int32 reason, Int32 pvLoopData)
at System.Windows.Forms.ThreadContext.RunMessageLoopInner(Int32 reason, ApplicationContext context)
at System.Windows.Forms.ThreadContext.RunMessageLoop(Int32 reason, ApplicationContext context)
at System.Windows.Forms.Application.RunDialog(Form form)
at System.Windows.Forms.Form.ShowDialog(IWin32Window owner)
at System.Windows.Forms.Form.ShowDialog()
模块中对frmMain调用ShowDialog。请高手指点,是不是frmMain里有问题,还是Framework有问题?
PS:有的时候DispatchMessageA方法也会引发错误。

...全文
514 36 打赏 收藏 转发到动态 举报
写回复
用AI写文章
36 条回复
切换为时间正序
请发表友善的回复…
发表回复
yuetoby 2006-02-08
  • 打赏
  • 举报
回复
重新作了一个Main,运行了48小时没问题,估计应该是解决了
虽然不知道真正的原因,还是感谢大家,结贴给分
yuetoby 2006-02-06
  • 打赏
  • 举报
回复
用API?还是MessageWindow?
不过 我这个程序里没有用到发送消息什么的,会不会是.net底层处理的时候发生的问题啊?
hero0045 2006-02-06
  • 打赏
  • 举报
回复
我们用的是Postmessage来触发事件,只是报引用的对象没有实例化。
yuetoby 2006-02-06
  • 打赏
  • 举报
回复
TO hero0045(hero)
错误提示是一样的吗?也是传送Windows消息的方法出现对象空引用的错误?
hero0045 2006-02-06
  • 打赏
  • 举报
回复
这次的项目开始时也遇到这个问题,刚开始时以为是Shared方法的问题,因为程序是三层结构,楼主可以看看是不是这样。
我后来发现是我在底层的一个对象没有实例化,但运行是好的,就是过一段时间就会出现上面的问题。
ilxdyang 2006-02-06
  • 打赏
  • 举报
回复
顶一下!!:)
gp01fb625 2006-02-06
  • 打赏
  • 举报
回复
再顶,我就没词用了
高手快来啊~
xiao_p 2006-02-06
  • 打赏
  • 举报
回复
这个问题还真比较怪异 签名~~
xiao_p 2006-02-06
  • 打赏
  • 举报
回复
顶~~ 希望能有高手解答~~
gp01fb625 2006-02-06
  • 打赏
  • 举报
回复
继续顶
hero0045 2006-02-06
  • 打赏
  • 举报
回复
没有的,除非用Doevent
xiao_p 2006-02-06
  • 打赏
  • 举报
回复
Timer和主线程不是分离的吗?
____________________
???//
yuetoby 2006-02-06
  • 打赏
  • 举报
回复
Timer和主线程不是分离的吗?
gp01fb625 2006-02-06
  • 打赏
  • 举报
回复
讨论的好热烈阿~
顶啊~~~~~
hero0045 2006-02-06
  • 打赏
  • 举报
回复
Timer触发的事件也是单线程的,不大可能
yuetoby 2006-02-06
  • 打赏
  • 举报
回复
frmMain上有一个Timer会不会是Timer导致线程出现了问题??
hero0045 2006-02-06
  • 打赏
  • 举报
回复
是api的,有可能是底层的问题
yuetoby 2006-02-05
  • 打赏
  • 举报
回复
这个错误是在程序正常运行一段时间后的一个不确定的时间出现的,这个step debug怎么搞......
frmMain肯定是 被实例化 要不也不可能正常运行哈
Sub main里的代码是这样的
frmMain = New Main
Application.Run(frmMain) 这个应该不会有错吧
看 异常说明问题出现在Application.Run(frmMain)这里,但是引发异常的是没有公布的方法。
涉及到消息传递了 在VB.NET里 很头疼啊。
czhenq 2006-02-05
  • 打赏
  • 举报
回复
frmMain为实例化 或者实例化失败
gp01fb625 2006-02-05
  • 打赏
  • 举报
回复
渴望出现高人解答~
加载更多回复(16)

16,555

社区成员

发帖
与我相关
我的任务
社区描述
VB技术相关讨论,主要为经典vb,即VB6.0
社区管理员
  • VB.NET
  • 水哥阿乐
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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