keitel
Goto Top

Standard Druckerauswahl über Script.

Hallo Leutz

Wir Arbeiten mit Offert Programmen und hatten mit Window NT keine probleme.

Jetzt haben wir Windows XP Sp2 und diese Offert programme nehmen nur den Standart Drucker zur Kenntnis,

4 Drucker vorhanden

Unser Problem die clienten müssen immer Umständlich die einzelnen Drucker je nach gebrauch über die Drucker einstellungen ändern.

Wir haben in NT zeiten ein script gehabt aber das greift nicht unter XP siehe unten.

Bitte um Hilfestellung.

mfg
Keitel

03b29544a21880442503d71c0902d149-stprint


;
; StandardDruckerauswahl
;
#SingleInstance ignore

; -- In der Registry nachschauen welcher Drucker als Standard eingestellt ist
RegRead, DRU_STD, HKCU, Software\Microsoft\Windows NT\CurrentVersion\Windows, Device
StringSplit, Word_Array, DRU_STD, `,
StringReplace, DRU_STD, Word_Array1, \\

; -- Aus der Registry auslesen welche Drucker installiert sind
prnCount = 0
prnNames =
Loop, HKCU, Software\Microsoft\Windows NT\CurrentVersion\PrinterPorts, 1
{
   StringReplace, Drucker, A_LoopRegName, "  
;"  
   prnCount += 1
   prnNames = %prnNames%%Drucker%|
   If Drucker = %DRU_STD%
      prnDefault = %prnCount%
}
;prnCount += 1
IfGreater, prnCount, 10
   prnCount = 10

; -- ComboBox
Gui, Color, F4F3FF

Gui, Font, s8, Verdana
Gui, Add, Text, xp+130 yp+010 cRed, Der Ausgewählte Drucker ist im`nMoment der StandardDrucker!
Gui, Font, s10, Verdana
Gui, Add, Button, xp-130 yp+000 gSelect default, &Drucker wählen
Gui, Add, ListBox, xp+000 yp+040 w320 R%prnCount% Choose%prnDefault% Sort gPrinter vPrinter, %prnNames%
Gui, Show, , StandartDruckerauswahl
Return

; -- Drucker mit DoppelClick ausgewählt
Printer:
   If A_GuiControlEvent <> DoubleClick
      Return

; -- Den ausgewählten Drucker anzeigen
Select:
   GuiControlGet, Printer
   MsgBox, 64, StandartDruckerauswahl, Als StandardDrucker wurde: "%Printer%" ausgewählt!, 5  
   Run, %windir%\system32\RUNDLL32.exe PRINTUI.DLL`,PrintUIEntry /y /n "%Printer%"  
   ExitApp

; -- Programm beenden
GuiEscape:
GuiClose:
ExitApp 

Content-Key: 77642

Url: https://administrator.de/contentid/77642

Ausgedruckt am: 29.03.2024 um 15:03 Uhr

Mitglied: Logan000
Logan000 09.01.2008 um 14:06:05 Uhr
Goto Top
Wir setzen den Standarddrucker per VB skript.
on Error resume next
Set WshNetwork = CreateObject("WScript.Network")  
drucker = "Druckername"  
WshNetwork.SetDefaultPrinter(drucker)
Aber wozu benötigt Ihr dieses Skript? Ich sehe nicht das dies Skript wesentlich schneller ist als die Druckerverwaltung von XP?
Mitglied: keitel
keitel 09.01.2008 um 15:22:49 Uhr
Goto Top
@Logan000
Erstmals Danke für die Schnelle Hilfe.

Es sollte so einfach wie möglich sein.

Deine Script anleitung funktioniert bis auf das man den Nezterkprinter nicht zurückstellen kann auf Default

Habe mich schlecht ausgedrückt.(Sorry)

Es sind ein Netzwerkdrucker (Standart + 4 PDF Drucker von gotomaxx)

Wenn ich dein script ausführe (für jeden drucker ein script) kann ich zwischen drei drucker schalten.
beim 4 drucker (Netzwerkdrucker) funkt es nicht.

Aber wozu benötigt Ihr dieses Skript? Ich sehe nicht das dies Skript wesentlich schneller ist als die Druckerverwaltung von XP?

Damit die User nicht abgelenkt werden 1 klick und fertig. Scripte liegen jeweils auf dem Desktop.

mfg
Keitel
Mitglied: Logan000
Logan000 10.01.2008 um 09:39:21 Uhr
Goto Top
Tatsächlich verwenden wir das Skript auch nur für Lokale Drucker.
Und auch nicht zum wechseln des Standart Druckers sondern als Defaulteinstellung.