我有以下代码打开visio,打开visio文件,打印文件然后关闭;一切正常。
但是,现在我的任务是将信息传递到名为“Ticket Task”的visio文档页面,将该信息绑定到某些形状然后打印出来。
我知道这可以用vb6(这就是写过时的代码),但有没有办法在vb.net中做到这一点?
谢谢!
代码:
''Set up the file path
Dim docPath As String = System.Environment.GetFolderPath(System.Environment.SpecialFolder.MyDocuments) + "\" + splFileData(0) + "\" + splFileData(1) + ".vsd"
'Set up the attributes for the opening/printing of the document.
psi.UseShellExecute = True
psi.Verb = "print"
'psi.EnvironmentVariables.Add("Orders", "Hello")
psi.Arguments = printer
psi.WindowStyle = ProcessWindowStyle.Hidden
psi.FileName = docPath
Console.WriteLine("Printing: " + docPath)
'Start the process (open visio document, print, close)
Process.Start(psi)
答案 0 :(得分:0)
您必须更改打开和打印Visio文档的方式。 This教程展示了如何使用VB.NET处理文档。 打开函数返回 Microsoft.Office.Interop.Visio.Document 类型的对象。您可以使用此对象将信息附加到形状,如here中所述。实际上,VB.NET代码与VB6非常相似。如果希望Visio不可见,可以按如下方式打开文档:
Microsoft.Office.Interop.Visio.InvisibleApp application = new Microsoft.Office.Interop.Visio.InvisibleApp();
application.Visible = false;
Microsoft.Office.Interop.Visio.Document doc = application.Documents.Open...