当我在某些元素上移动时(编辑:将其范围缩小到对调用了 SuspendLayout、ResumeLayout 和 PerformLayout 的控件进行大小/位置更改,并且仅当使用鼠标进行更改时 - 直接编辑可以正常工作)在设计器的 MainForm 上,VS 崩溃并告诉我它已停止工作。当我使用第二个实例进行调试时,调试器在 devenv.exe 中给出了未处理的 NullReferenceException。这个问题突然突然出现,而且似乎相当顽固 - 我修复了 VS,重新安装了 .Net Framework(4.5 SDK),重新启动机器,以管理员身份运行 VS 等。我使用的是 Windows 8 最新版本,我使用 Visual Studio 2012 高级版。
我使用的唯一第三方插件是 git-ext。
有人有遇到过这样的错误吗?直到今天,我相信这样的东西更多的是 Java/Eclipse 世界的主题...提前感谢您的任何提示,我在这里有点绝望:))我当然会提供所需的任何其他信息!干杯
编辑
这是我在使用 VS 的第二个实例进行调试时遇到的异常:
System.NullReferenceException was unhandled
HResult=-2147467261
Message=Object reference not set to an instance of an object.
Source=System.Design
StackTrace:
at System.Windows.Forms.Design.Behavior.BehaviorService.AdornerWindow.MouseHook.MouseHookProc(Int32 nCode, IntPtr wparam, IntPtr lparam)
InnerException:
按照凯尔的指示(非常感谢您的输入!!),到目前为止我尝试了以下操作:
- 重新启动进入安全模式 - 没有变化
- 创建新用户帐户 - 不变
- 删除所有插件并在安全模式下运行 - 没有变化
- 重置设置 - 不变
- 创建一个新项目(带有一些控件的简单形式) - 一切正常,没有崩溃,所以看起来问题确实与项目有关
- 修复 VS - 没有变化
编辑2
当我拖动新的 GroupBox 容器、更改其大小或删除它时,它也会崩溃
编辑3
按照 Avi 的说明,我能够解决该问题 - 这似乎是由 VS2012 中的错误引起的,我有一个 GroupBox 控件隐藏在其他一些控件后面,一旦我删除它,错误就消失了。
最佳答案
请尝试以下解决方法:
如果我们将操作系统重新启动到安全模式,是否会出现问题?这有助于隔离是否有任何其他应用程序干扰 Visual Studio。请注意,某些功能(如 IIS)在安全模式下不可用。请检查这是否适用。除了安全模式之外,您还可以尝试“干净启动”:http://support.microsoft.com/kb/310353 .
如果我们创建一个新的用户帐户,会有问题吗?这有助于隔离与用户配置文件损坏相关的原因。
如果我们禁用加载项(例如“工具”|“加载项管理器”)并运行“devenv.exe/safemode”,问题还会存在吗?这可以消除第三方加载项导致问题的可能性。
如果我们使用“devenv.exe/resetsettings”,是否可以解决问题?它恢复 Visual Studio 默认设置。
如果我们创建一个新项目,会有问题吗?有时,损坏的项目设置可能会导致问题。这些是特定于项目的。
如果问题仍然存在,我们可以使用 Visual Studio 安装向导(通过控制面板)来修复 Visual Studio。它可以将 Visual Studio 安装恢复到原始状态。
另外,请引用下面的连接链接,看看您是否遇到同样的问题。
关于c# - 在设计器中移动窗体上的控件时,Visual Studio 2012 突然崩溃,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18246792/