我们目前正在开发adobe reader以从我们的传统silverlight产品中打印出pdf,该产品可以正常使用以下代码:
Dim shell = AutomationFactory.CreateObject("Shell.Application")
shell.ShellExecute(path, "", "", "print", 1)
这很有效,问题是打印完成后,Adobe阅读器应用程序仍处于打开状态,这对用户群来说有点烦人。
我的问题是如何从代码中关闭adobe reader应用程序?
由于
答案 0 :(得分:0)
你做不到。 您调用Adobe Reader和另一个进程,打开另一个程序。没有什么是你可以做的,但却杀了这个任务。
但是杀死任务的问题是你可能会关闭在新的Adobe Reader实例中打开打印文件后打开的另一个PDF文件。
如果你选择杀死Adobe进程,我认为在自定义软件或封闭且已知的用户环境中都可以。但是应该警告用户这种行为。通过软件或用户培训手册。
答案 1 :(得分:0)
我用它将pdf发送到标准打印机
Dim pd As New System.Drawing.Printing.PrintDocument
Dim p As New PrintDialog()
p.SelectedPagesEnabled = False
If p.ShowDialog() = True Then
pd.DocumentName = pdfFile
pd.PrinterSettings.PrinterName = p.PrintQueue.Name
pd.PrintController = New System.Drawing.Printing.StandardPrintController()
pd.OriginAtMargins = False
pd.Print()
End If
也许你也适合你。