【问题标题】:Microsoft Visual Studio has Stopped WorkingMicrosoft Visual Studio 已停止工作
【发布时间】:2013-01-25 20:32:31
【问题描述】:

这种情况一遍又一遍地发生。我只是坐在这里没有运行任何代码,它发生了。我查看事件查看器,它看起来像是试图从我的一个类中运行代码。

Application: devenv.exe
Framework Version: v4.0.30319
 Description: The process was terminated due to an unhandled exception.
 Exception Info: System.ArgumentNullException
 Stack:
    at System.Data.Linq.DataContext..ctor(System.String, System.Data.Linq.Mapping.MappingSource)
    at TurnbackTools.DataClasses1DataContext..ctor(System.String)
    at TurnbackChart.TurnbackChart.ZDraw()
    at TurnbackChart.TurnbackChart.TimerTick(System.Object, System.EventArgs)
    at System.Windows.Forms.Timer.OnTick(System.EventArgs)
    at System.Windows.Forms.Timer+TimerNativeWindow.WndProc(System.Windows.Forms.Message ByRef)
    at System.Windows.Forms.NativeWindow.DebuggableCallback(IntPtr, Int32, IntPtr, IntPtr)

这是怎么回事?

【问题讨论】:

  • 我猜System.Data.Linq.Mapping.MappingSource 对象是null
  • 那是因为蹩脚的 winforms 设计器创建了您的表单实例以在设计器中显示,请尝试确保您的代码在 InDesignerMode 时不会执行。

标签: c# winforms visual-studio exception visual-studio-2012


【解决方案1】:

“Microsoft Visual Studio 已停止工作”不是我看到的错误。我看到的那个说在不允许时指定了一个空参数 (System.ArgumentNullException)。

那里有整个调用堆栈。而且,在调试器中,您可以单击它们以找到参数为空的行。

一旦您习惯了使用调试器,这实际上是很容易隔离的。当然,解决它可能会更复杂,但您至少应该从缩小导致错误的范围开始。

【讨论】:

  • 也是基线。有点像出租车司机在没油时告诉你汽车坏了——这种调试是程序员每天都在做的事情。
  • 我想通了。我的代码正在创建一个计时器。然后,当应用程序停止时,它没有处理计时器。然后在应用程序停止后,即我回去编写代码,计时器事件继续触发。当应用程序未运行时,这些事件正在发生并引发异常。
【解决方案2】:

我想通了。我的代码正在创建一个计时器。然后,当应用程序停止时,它没有处理计时器。然后在应用程序停止后,即我回去编写代码,计时器事件继续触发。当应用程序未运行时,事件正在发生并引发异常

【讨论】:

    猜你喜欢
    • 2012-10-12
    • 1970-01-01
    • 1970-01-01
    • 2011-10-18
    • 1970-01-01
    • 2016-03-08
    • 2014-06-11
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多