Standarddrucker unter Windows 10

Hallo zusammen,

und ein weiteres Problem gleich hinterher:

wir würden gerne unter Windows 10 Education Version 1803 Standarddrucker festlegen.

Vorgehen: https://www.linuxmuster.net/wiki/anwenderwiki:drucken:drucken_logon_bat

Problem: wo finde ich die adprintx.exe-Datei? Auf unserem Linux Musterserver ist sie nicht aufzufinden.

Wenn ich alternativ versuche den Standarddrucker (testweise über Kommandozeile) nach dem Schema zu setzen: https://it-stack.de/18/11/2010/drucker-per-kommandozeile-cmd-verwalten-rundll32-exe-printui-dll/, dann bekomme ich nach Ausführen des Kommandos immer eine Fehlermeldung:

Der Vorgang konnte nicht abgeschlossen werden (Fehler 0x00000709)

Hat jemand von euch ähnliche Probleme bzw. das gleiche Problem?

Würde mich über eine Rückmeldung freuen.

Viele Grüße,

Tobias

Hallo Tobias,

leider kann ich dir nicht direkt helfen.
Mit 18.03 hat Microsoft mal wieder stark im Druckermanagement
rumgerührt: da kann es gut sein, dass alte Lösungen garnicht mehr gehen.

Meine Lösung ist bei allen Betriebsystemen, dass der PDF Drucker von
Cups immer der Default Drucker ist.
Das zwingt die Nutzer zum Nachdenken, wenn sie den ein echtes Blatt
haben wollen … aber ist die Schule nicht genau für sowas da?

Meine Drucker heißen, wie der Raum in dem sie stehen:
p102
p154
p155

LG

Holger

Nicht, wenn es das Kollegium mehrheitlich nicht will! … und auf dieser Basis muss das System den richtigen Drucker automatisch auswählen. IServ kann das. Die hinterlegen aber auch in ihrer Datenbank, in welchem Raum ein Drucker steht. Im Gegensatz zu “unserem” Skript auf den Linux Clients, das den alphabetisch letzten im selben Raum wie der Rechner nimmt, wird dort der erste genommen. Das Funktionsupdate 1803 hat diesen Mechanismus offenbar nicht zerstört.

Moin!

Wir konnten das Problem nun selbst lösen. War viel Rumprobiererei. Aber hier die Lösung, so wie es bei uns funktioniert hat:

REM ################################
REM # Einstellungen alle hier oben #
REM # Dann muss man bei Aenderungen nicht immer das ganze Skript #
REM # durchsuchen#
REM #################################

REM Standarddrucker fuer die Raeume
REM Das muessen die Windows Namen aus dem Image sein
set PRT01=\\DRUCKERPFAD\A19_Farblaser
set PRT02=\\DRUCKERPFAD\B19_Farblaser

REM Ende Einstellungen ##################################

REM #################################################### 

REM Damit das mit den Raeumen tut _muss_ der Computername

REM  <raumname>-<pcname> sein, da der Teil bis zum Dash 

REM  als Raumname interpretiert wird!

REM ##########################################################
for /f "delims=r tokens=1*" %%i in ("%COMPUTERNAME%") do set ROOM=%%i

REM Wenn das nicht hinhaut, heisst der Raum am Ende "Default"
if "%ROOM%"=="" set ROOM=Default

REM Drucker setzen *******************************************
REM Default im Image ist der PDF-Printer, wenn also alles
REM fehlschlaegt ist dieser der Standarddrucker
REM Man koennte auch hier einen "Standarddefault" definieren
REM if "%ROOM%"=="Default" rundll32 printui.dll,PrintUIEntry /y /n "%PRT01%"
if "%ROOM%"=="a19" rundll32 printui.dll,PrintUIEntry /y /n "%PRT01%"
if "%ROOM%"=="b19" rundll32 printui.dll,PrintUIEntry /y /n "%PRT02%"

REM Debugging: Mit "pause" bleibt das Fenster offen
REM einfach das REM wegmachen
REM pause

===================================================================

ausgelesen haben wir die Druckerpfade über die Eingabeaufforderung mittels diesem Befehl:

reg query "HKCU\Software\Microsoft\Windows NT\CurrentVersion\Devices"

Die wichtigste Anpassung ist hier in dieser Zeile erfolgt:

for /f "delims=r tokens=1*" %%i in ("%COMPUTERNAME%") do set ROOM=%%i

Wir hatten als Trennzeichen kein “-” sondern das “r”, aber vor allem aus tokens=1 wird tokens=1*, bei ROOM=% %i muss das Leerzeichen weg, dadurch wird ROOM=%%i drauß.

Viel Spaß beim Ausprobieren!

1 „Gefällt mir“