chris44
Goto Top

Netzwerkdrucker an verschiedenen Standorten via Script automatisch hinzufügen

Hallo alle zusammen,

habe folgendes Problem wir haben mehrere Filialen und die User sind teilweise mit Laptos unterwegs, und nicht bei der entsprechenden Domain registriert müssen sich aber trotzdem anmelden um Drucken zukönnen.
Die Anmeldung ist nicht das Problem sondern die Drucker da in der jeweiligen Domain mehrere vorhanden sind und für die User teilweise auf eine für normal Nutzer sehr umständliche Art hinzugefügt werden müssen!

Nun meine Frage weiß jemand ob es ein Script gibt was die Drucker automatisch erkennt an der jeweiligen Domain und wo man dann auswählen kann welchen man nimmt da sonst werden ja etliche hinzugefügt was die User noch mehr verwirren würde.
Oder ein script was die Drucker erkennt und man vorher schon im Script festlegen kann welcher drucker geladen werden soll unter der Domain zb. Drucker 1 in der anderen Drucker 10!

die jeweiligen Server laufen auf Windows 2003 und die Laptops auch auf Windows !

Hatte daran gedacht ein Script in Shell zuschreiben aber habe leider damit noch nicht wirklich viel zutun gehabt was Shell angeht!


wäre für Hilfe sehr dankbar Chris

Content-ID: 84425

Url: https://administrator.de/forum/netzwerkdrucker-an-verschiedenen-standorten-via-script-automatisch-hinzufuegen-84425.html

Ausgedruckt am: 23.12.2024 um 12:12 Uhr

42687
42687 01.04.2008 um 18:15:48 Uhr
Goto Top
probiers mal in der AD add new Printer. Bei mir ist, wenn ich mich in der Domäne angemeldet habe, automatisch der Drucker hinzugefügt wurden. Beim Abmelden wurde er wieder gelöscht.
Schmeiß den Drucker einfach bei User rein, mich würde das Ergebnis interessieren.

bb
Chris44
Chris44 03.04.2008 um 08:20:59 Uhr
Goto Top
Thx für den Tip aber ist leider nicht das was ich suche .

Das Problem ist das sie an verschiedenen Standorten wenn sie sich anmelden also mit Username und Passwort nur 1-2 bestimmte Drucker installiert werden sollen da sie sonst zuviele hochziehen.
zb. an der Domain xy User xy Passwort xy Drucker xy
und an der anderen Domain ebend dann das selbe nur mit Drucker yz.

Gruß Chris
42687
42687 03.04.2008 um 15:46:00 Uhr
Goto Top
tut mir leid, aber da kann ich dir auch nicht weiterhelfen!!

bb
60730
60730 03.04.2008 um 16:01:31 Uhr
Goto Top
... dann will ich mich mal versuchen ,-)

Zuerst wäre es interessant / wichtig, was Du genau willst.

Melden sich die User "lokal" oder an der Domain an?

Hat sich erledigt, das Script nutzt nun die Ip Adresse face-wink

Sollen die Drucker aus dem jeweils anderen Standort vorher gelöscht werden?

Hat sich "eigentlich" auch erledigt, die per Script des jeweils anderen Standortes, werden getrennt.

Und gibt es lokale Drucker, die auf keinen Fall gelöscht werden sollen (PDF Creator; Office XPS Printer)?


Im Fall, dass sich die user an der Domain anmelden, wäre folgender Ansatz möglich:
Du brauchst in dem Fall ein Laufwerk mit einem Unterordner (n:\log) im Beispiel.

Die Anmeldeserver in dem Fall haben folgende Namen, der in Frankfurt steht, hat ein FS im Namen, der Berliner ein BS.

Nur der Vollständigkeit halber, der Teil des "alten" Scripts....
@echo %logonserver% >n:\log\wobinich.ini
@findstr /c:"BS" n:\log\wobinich.ini && goto Berlin  
@findstr /c:"FS" n:\log\wobinich.ini && goto Frankfurt  

Edit:
hab das mal verfeinert und nutze nun die Ipadresse, Berlin = 128, Frankfurt 129

Echo Per Ip Adresse

for /f "Tokens=2 Delims= skip=1" %%i in ('ping -n 1 %computername%') do set IP=%%i  
if %IP% lss 192.168.128.254 goto Berlin
if %IP% lss 192.168.129.254 goto Frankfurt

:Frankfurt
echo "willkommen in Frankfurt, der Berliner Drucker wird getrennt."  
rundll32 printui.dll,PrintUIEntry /q /in /dn \\bs2k000\printer
echo willkommen in Frankfurt, der Frankfurter Drucker wird verbunden.
rundll32 printui.dll,PrintUIEntry /q /in /n \\fs2k000\printer
goto end

:Berlin
echo "willkommen in Berlin, der Frankfurter Drucker wird getrennt."  
rundll32 printui.dll,PrintUIEntry /q /in /dn \\fs2k000\printer
echo "willkommen in Berlin, der Berliner Drucker wird verbunden."  
rundll32 printui.dll,PrintUIEntry /q /in /n \\bs2k000\printer
:end
exit
Chris44
Chris44 04.04.2008 um 06:40:53 Uhr
Goto Top
Guten Morgen,

erstmal vielen Dank für die Tips und Antworten!!!!

Du fragtest was ich genau will dazu jetzt mehr.

Also wir haben insgesamt 12 Standorte in Berlin Brandenburg. Die User sind innerhalb der Woche viel unterwegs und daher oft an unterschiedlichen Standorten. Da gab es bisher immer das Problem wenn sie sich auf die jeweilige IP angemeldet haben wurden alle Drucker hochgezogen die damit verbunden sind (10-20).
Um dies einzugrenzen und es den Usern einfacher zumachen wollte ich ein ShellScript erstellen wo der vorher zugewiesene Drucker in dem Script sich bei dem Loggin auf der IP automatisch auf dem jeweiligem Laptop installiert und so nur bei jedem Standort der zugewiesene Drucker verwendet werden kann.
Achso THX für das Script werde es gleich mal Testen!


Ansonsten Euch ein schönes Wochenende falls wir uns heute nicht mehr lesen!

Gruß Chris
Chris44
Chris44 04.04.2008 um 10:28:42 Uhr
Goto Top
Moin zusammen;

Alos wir haben das jetzt so gelöst:

@echo off
for /f "Tokens=2 Delims=" %%i in ('ping -n 1 %computername%') do set IP=%%i
echo %IP%>%TEMP%\ip.txt
for /f "tokens=2 delims=." %%a in (%TEMP%\ip.txt) do set IP2=%%a

if %IP2% == 25 goto XY Strasse
if %IP2% == 26 goto XY Starsse
goto end

:XY
echo willkommen in der XY Strasse
rem rundll32 printui.dll,PrintUIEntry /q /in /dn \\server\printer
rem rundll32 printui.dll,PrintUIEntry /q /in /n \\fs2k000\printer
goto end

:XY
echo willkommen in der XY Strasse
rem
rem rundll32 printui.dll,PrintUIEntry /q /in /dn \\fs2k000\printer
rundll32 printui.dll,PrintUIEntry /q /in /n \\server\printer
rundll32 printui.dll,PrintUIEntry /in /n \\server\printer /y
goto end

:end
pause
exit

funktioniert soweit bestens THX nochmal an TimoBeil supi hat echt sehr geholfen!!

Einzigste was noch stört ist das man eine txt.Datei anlegen muß damit das Script ausgeführt wird !
Vieleicht weiß da ja noch jemand Rat wie man dieses umgehen kann bzw. eleganter lösen kann als das jedesmal eine txt.Datei schreiben zulassen.


Also wie schon geschrieben allen ein schönes Wochenende !!!!!


Gruß Chris
Chris44
Chris44 07.04.2008 um 07:47:45 Uhr
Goto Top
Moin @ All,

THX nochmal für Eure hilfe geht alles bestens nur nachdem es so ging will mein Chef das jetzt wieder anders haben Chefs halt noch einfacher und kompfortabler.
Jetzt möchte er das selbe mit einem Ausgabefenster haben wo alle Drucker in der Domain angezeigt werden und der Nutzer sich den Drcuker dann selber aussuchen kann.
Also im Prinzip wie oben nur ebend alle Drucker sollen wie in in einer MsgBox angezeigt werden und der User durch ein Klick drauf selber aussuchen können welchen er installiert und nutzt.
Weiß nicht ob das möglich ist und welche Programmiersprache dafür am besten geeignet ist.


Gruß Chris
60730
60730 07.04.2008, aktualisiert am 18.10.2012 um 18:35:36 Uhr
Goto Top
Hi Chris,

sag deinem Chef "noch" einfacher gehts ja wohl kaum - die Arbeit liegt bisher bei dir (demjenigen, der das Skript pflegt)

Das was er "nun" will, ist mit komplett anderen Mitteln zu lösen und hat mit der Ursprungsfrage kaum etwas gemeinsam.

Nun gut - dann markiere doch bitte diesen Thread als gelöst und mache einen neuen mit der jetzigen Frage auf.
Dann bekommst du auch Feedback.

@ Chris:
so etwas in der Art?
42687
42687 07.04.2008, aktualisiert am 18.10.2012 um 18:35:36 Uhr
Goto Top
Hy,
hatte ein ähnliches Problem.
Mein Freund hat mir dann was mit Hilfe von administrator.de in Delphi programmiert.
Er ruft aus einer Batch eine exe auf die das eben grafisch darstellt und die dortige Eingabe wird an die Batch wieder zurückgegeben. Hilfe: Variablen aus Delphi an Batchdatei übergeben da wird das Problem erläutert. Ich weißt nicht ob du Programmieren kannst, sonst kann ich dir auch nicht weiterhelfen ich kanns auch nicht aber vlt. Hilft dir das.
Lege doch für die Drucker variablen an. z.B. Drucker1 == Ja goto "verbinden zu Drucker1"

bb