打开包含Visio 2013预览绘图控件的表单时,Visual Studio 2012崩溃。 (Microsoft Visio 15.0绘图控件 - Com组件)。
重现此问题的步骤。
打开Visual Studio 2012
创建新的Windows窗体应用程序(C#)
将COM组件Microsoft Visio 15.0绘图控件添加到工具箱。
在Form2.cs [Design]上放置Visio绘图控件。
保存所有文件,项目和解决方案。
在Visual Studio 2012 IDE中关闭Form1.cs [Design]。
双击Solution explorer中的Form1.cs编辑表单[Design]视图。
此时Visual Studio应用程序崩溃。
这是Visio 2013 Preview中的已知错误。
在VB6应用程序中使用Visio 2013绘图控件也会产生类似的结果,并显示& H80004005(-2147467259)错误消息。
我们的产品在VB6应用程序中使用Visio 2013控件。这也是Visual Studio 2012中的一个问题。
有关正在发生的事情的任何想法?
答案 0 :(得分:2)
到目前为止,我能想出的最佳解决方法是仅在代码中实例化绘图控件。换一种说法。不要将它从IDE中的工具箱拖到窗体(等)上,而只是从代码中创建和实例化控件。这样,控件就不会出现在GUI表单编辑器中,也不会冻结Visual Studio实例。
如果您不确定如何操作,可以将其暂时拖到表单中,然后从FormName.Designer.cs(或.vb)文件中提取控件的相关代码。
请注意,我的经验仅适用于VS2012。我不确定你是否可以在VB6中使用该控件(没有安装它来测试)。
答案 1 :(得分:0)
Option Explicit
Private WithEvents moo As Visocxctl.DrawingControl
Private Sub Command1_Click()
Set moo = Form1.Controls.Add("VisOcx.DrawingControl.1", "VisioRuntime")
moo.Left = 0
moo.Top = 0
moo.Visible = True
End Sub
答案 2 :(得分:0)
尝试此解决方法: Visio Drawing Control Fails in Visual Studio 2012。 用Office15替换Office14 for Visio 2013.我可以在设计时成功删除控件并运行示例Windows窗体应用程序。当使用任何版本的Visio绘图控件时,这是VS2012中的已知错误。