Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

VBS PDF drucken

Frage Entwicklung VB for Applications

Mitglied: mixmastertobsi

mixmastertobsi (Level 1) - Jetzt verbinden

29.10.2010 um 09:03 Uhr, 10486 Aufrufe, 3 Kommentare

Hallo zusammen,

eins vorweg - ich bin gespannt, ob es für mein Problem eine Lösung gibt.

Aufgabenstellung:
In einem Netzwerk Ordner sind PDF Dateien, die automatisch gedruckt werden sollen. Das VBS läuft als Dienst im Hintergrund. Die PDF Dateien werden automatisch auf dem Standardrucker gedruckt. Dies alles funktioniert jeduch nur, wenn ein Benutzer angemeldet ist. Sobald der User sich abmeldet, werden die PDF-Dokument zwar noch geduckt, jedoch nicht mehr auf dem richtigen Drucker. Irgend was bringt das System da durcheinander.

Meine Frage daher - wie kann ich per VBS eine PDF Datei drucken und den Druckername angeben? Danke!

kleiner Auszug aus dem Skript
set objShell = CreateObject("WScript.Shell")
iErrorCode = objShell.Run("AcroRd32.exe /p /h " & objitem.path)
Mitglied: AndreasHoster
29.10.2010 um 09:18 Uhr
Unter was für einem User Account läuft den der Dienst?
Vermutlich System, oder? Und vermutlich Interaktiv mit Desktop?

Wenn ja, lass den Dienst unter einem eigenem User laufen, der den richtigen Drucker als Standarddrucker definiert hat.
Bitte warten ..
Mitglied: 60730
29.10.2010 um 15:57 Uhr
Moin,

per VBS eine drucken und den Druckername angeben

Du mußt das anders lösen....
Der druckt zu 100% auf den Standarddrucker (siehe auch Andreas Antwort)

  • xyz im Script ist der Drucker, auf dem gedruckt werden soll und den stellst du so als Standarddrucker ein.


01.
strComputer = "." 
02.
Set objWMIService = GetObject("winmgmts:" _ 
03.
    & "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2") 
04.
Set colInstalledPrinters =  objWMIService.ExecQuery _ 
05.
    ("Select * from Win32_Printer Where Name = 'xyz'") 
06.
For Each objPrinter in colInstalledPrinters 
07.
    objPrinter.SetDefaultPrinter() 
08.
Next 
09.
 
10.
set objShell = CreateObject("WScript.Shell") 
11.
iErrorCode = objShell.Run("AcroRd32.exe /p /h " & objitem.path)
Gruß
Bitte warten ..
Mitglied: 76109
31.10.2010 um 13:28 Uhr
Hallo mixmastertobsi!

Andere Möglichkeit in etwa so:
01.
Const AcrobatReader = """C:\Program Files (x86)\Adobe\Reader 9.0\Reader\AcroRd32.exe"" /t ""%1""" 
02.
Const PrinterDriver = """C:\Windows\System32\Drivers\UsbPrint.sys""" 
03.
Const PrinterName = """Canon MX850 Series Printer""" 
04.
Const PrinterPort = """USB002""" 
05.
 
06.
Dim objShell, CmdLine 
07.
     
08.
Set objShell = CreateObject("WScript.Shell") 
09.
 
10.
CmdLine = AcrobatReader & " " & PrinterName & " " & PrinterDriver & " " & PrinterPort	 
11.
	 
12.
objShell.Run Replace(CmdLine, "%1", objItem.path)
Gruß Dieter
Bitte warten ..
Ähnliche Inhalte
VB for Applications
gelöst Tool zur scriptbasierten PDF-Bearbeitung gesucht (VBS oder Batch) (6)

Frage von SarekHL zum Thema VB for Applications ...

Batch & Shell
PDF auf Email automatisiert über Netzwerk drucken (1)

Frage von Str33tfight3r zum Thema Batch & Shell ...

Outlook & Mail
gelöst Outlook blockiert PDF Anhänge (8)

Frage von jojo0411 zum Thema Outlook & Mail ...

Entwicklung
gelöst Grafische Darstellung - Fortschrittsanzeige VBS Skript (7)

Frage von Komoran12 zum Thema Entwicklung ...

Neue Wissensbeiträge
Heiß diskutierte Inhalte
Firewall
Welche Firewall ? (18)

Frage von Cyberurmel zum Thema Firewall ...

Windows Server
gelöst Einzelnes Windows Update über GPO deinstallieren (16)

Frage von lordofremixes zum Thema Windows Server ...

Windows Server
GPO zum Deinstallieren von Office Update wird nicht ausgeführt (15)

Frage von lordofremixes zum Thema Windows Server ...