如何调试Windows窗体设计器崩溃问题?

4
我有一个Windows表单项目。 它有一个主窗体,派生自 System::Windows::Forms::Form ,我可以在设计器中打开它而没有任何问题。 但是,如果我尝试关闭设计器,它会使Visual Studio(v2008 SP1)崩溃。
该窗体包括一个选项卡控件,其中包含具有各种 System::Windows::Forms::UserControl 派生形式的页面。 因此,我猜故障点可能位于主窗体或其中一个子组件中。 问题是我不知道如何缩小范围?
我已经尝试从另一个开发环境的副本进行调试,但无法使断点起作用。
任何建议如何解决这个问题都将非常感激!
[编辑] 经过反复试验,我已将其缩小到单个 System::Windows::Forms::UserControl 派生控件,并且仅当该控件嵌套在 System::Windows::Forms::TabControl 中时才会出现崩溃。 是选项卡控件在关闭时会导致崩溃吗?
1个回答

7
尝试打开另一个VS实例,转到调试 -> 附加进程,从列表中选择另一个VS(其中包含您的项目),然后在应用程序的某个位置设置断点(在可能导致此错误的地方),运行您的项目,您应该能够调试它并找到导致VS崩溃的原因。祝好运。

我已经尝试过在构造函数和InitializeComponent中这样做,但它不会启用断点。如果我将鼠标悬停在断点上,它会显示“当前不会命中断点。未为此文档加载符号”。有什么想法吗? - Jon Cage
此外,当我尝试在另一个项目中加载该表单时,设计器放弃并显示“文件'c:\SomePath\Form1.h'不支持代码解析或生成,因为它不包含在支持代码的项目中。” - Jon Cage
@leppie:怎么做?我尝试了这个:http://msdn.microsoft.com/en-us/library/tdw0c6sf.aspx 但是我只看到了“调试器类型”选项。将其更改为“混合”似乎没有帮助? - Jon Cage

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接