如何在c#visio控件中使用visio 2013以vsd格式保存diagramm?
我使用以下代码:
string filename = String.Format("{0}.vsd", Guid.NewGuid());
visioControl1.Document.SaveAs(temppath + filename); //Error!
这在Visio 2003-2010下工作正常,但在Visio 2013中会抛出“找不到文件”异常。 如果我在第一行中将扩展名更改为“vsdx” - 则可以再次使用。但我必须支持所有Visio版本。
答案 0 :(得分:1)
Visio API中存在一个已知错误: Visio 2013的Visio控件无法保存为VSD。它会显示各种奇怪的行为。 为了解决这个问题,在Visio 2013下,你必须保存为vsdx并使用Visio的隐形应用程序实例保存为vsd:
确定安装的Visio版本: VisioVersion = Convert.ToInt32(document.Application.Version.Replace(“。”,“,”)。Replace(“,0”,“”)) 如果VisioVersion> = 15 - > Visio 2013
请注意:要保存为vsd / vsdx,您必须使用: document.SaveEx insted of document.Save
要创建不可见Visio应用的实例,请参阅: Microsoft.Office.Interop.Visio.InvisibleApp