Skriv ut PDF fra VBScript eller kommandolinje uten acrobat.exe

stemmer
4

Er det mulig å skrive ut en pdf-dokument til standardskriveren innsiden av VBScript eller fra kommandolinjen uten AcroRd32.exe?

Ideelt hvis ville være fint å bare sende pdf til skriveren og ikke trenger et annet program.

  • eller -

Er det en tredje part .exe program som kan skrive ut pdf uten dialog og uten å åpne og uten å vise i oppgavelinjen i Windows?

Den .exe må frittstående (så en windows installasjonen er ikke nødvendig).

Jeg ok å betale opp til $ 100 for .exe så lenge det kan distribueres på innsiden av et annet program. Gratis er også stor.

Dette har meg stabbet.

Publisert på 23/10/2013 klokken 10:53
kilden bruker
På andre språk...                            


2 svar

stemmer
1

Hva med dette:

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

Den Shell.Applicationobjektet trenger mappen som filen er i, og konstant FILE_TO_PRINTmå hele banen til filen.

Den InvokeVerbEx("Print")åpner filen i det tilknyttede programmet som Foxit Reader eller Acrobat, og sender den til standardskriver.

Det har samme effekt som å høyreklikke en fil i explorer og klikke 'Skriv ut'

Svarte 23/10/2013 kl. 11:14
kilden bruker

stemmer
5

Jeg tror ikke du kan skrive ut PDF-filer med VBScript alene. Men SumatraPDF bør være i stand til å gjøre hva du vil. Det er en frittstående kjørbar, og du kan skrive ut PDF-filer til standardskriver ved hjelp av -print-to-defaultalternativ:

filename = "C:\path\to\some.pdf"

Set sh = CreateObject("WScript.Shell")
sh.Run "sumatrapdf.exe -print-to-default """ & filename & """", 0, True

Se manualen for mer informasjon.

Svarte 23/10/2013 kl. 11:19
kilden bruker

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more