是否可以在没有AcroRd32.exe的情况下将pdf文档打印到vbscript内的默认打印机或命令行?
理想情况下,如果将pdf发送到打印机并且不需要其他程序就好了。
是否有第三方.exe程序可以在没有对话的情况下打印pdf而无需打开且不在Windows任务栏中显示?
.exe需要独立(因此不需要Windows安装过程)。
我可以为.exe支付高达100美元,只要它可以在另一个应用程序内部分发。免费也很棒。
这让我很难过。
答案 0 :(得分:5)
我认为您不能单独使用VBScript打印PDF。但是,SumatraPDF应该可以做你想要的。它是一个独立的可执行文件,您可以使用-print-to-default
选项将PDF打印到默认打印机:
filename = "C:\path\to\some.pdf"
Set sh = CreateObject("WScript.Shell")
sh.Run "sumatrapdf.exe -print-to-default """ & filename & """", 0, True
有关详细信息,请参阅manual。
答案 1 :(得分:1)
这个怎么样:
Option Explicit
Const FILE_TO_PRINT = "C:\full\path\to\your\file.pdf"
Dim shl
Dim fldr
Dim files,file
Set shl = CreateObject("Shell.Application")
Set fldr = shl.Namespace("C:\full\path\to\your\")
Set files = fldr.Items
For Each file in files
If LCase(file.Path) = LCase(FILE_TO_PRINT) Then
file.InvokeVerbEx("Print")
End If
Next
Set shl = Nothing
Set fldr = Nothing
Set files = Nothing
WScript.Quit
Shell.Application
对象需要文件所在的文件夹,常量FILE_TO_PRINT
需要文件的完整路径。
InvokeVerbEx("Print")
打开相关程序中的文件,如Foxit Reader或Acrobat,并将其发送到默认打印机。
与右键单击资源管理器中的文件并单击“打印”
具有相同的效果