Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Script per GPO nur genau einmal ausführen

2,667 views
Skip to first unread message

Holger Schmidt

unread,
May 22, 2003, 6:26:40 AM5/22/03
to
Hallo NG,

kennt jemand eine Möglichkeit ein Script per GPO nur genau einmal
auszuführen. sowas wie runonce in der Registry
ich möchte remote Drucker eines Druckservers auf OU Ebene zuweisen und das
ganze natürlich nur einmal nicht bei jedem Neustart.
Zuweisung per rundll32 printui.dll,PrintUIEntry /q /in /n "\\server\freigabe
drucker"

MfG
Holger Schmidt


Robert Pieroth [MVP]

unread,
May 22, 2003, 10:07:42 AM5/22/03
to
"Holger Schmidt" <Holger.Schm...@prosozial.de> schrieb

Hallo Holger,

solche Sachen fängt man ggf. mit einer 'Bedingten Verzweigung' ab.
Man prüft also zunächst das Vorliegen/Nichtvorliegen einer bestimmten
Bedingung und verzweigt dann entsprechend im Script an eine
andere Stelle. Dafür gibt es den IF - Befehl. Beispiel:

:Stechuhr
Plonk
IF "Sonne scheint" == True GOTO Schwimmbad
:Arbeitsplatz
GOTO Stechuhr
:Schwimmbad
Plansch
:END

Scherz beiseite... Ich könnte mir das in der Praxis so vorstellen:
Man läßt beim ersten Lauf des rundll32 printui.dll zuletzt eine Datei mit den
Druckereinstellungen wegschreiben:
rundll32 printui.dll,PrintUIEntry /Ss /n "printer" /a "%userprofile%\Drucker.TXT"
Im Script prüft man vor dem ersten rundll-Befehl auf Vorhandensein der Datei:

IF EXIST "%userprofile%\Drucker.TXT" GOTO NOPRINT
rundll....
rundll...
rundll...
:NOPRINT
...weitere Befehle...

Vorteil hierbei ist:
- Im Userprofil hat der User Schreibrechte
- Ein anderer User, der sich neu am selben PC anmeldet hat das File (noch)
nicht im Profil und bekommt daher wieder den Drucker verbunden.
- Über Zugriff auf Eigene Dateien sieht der User das File nicht, weil
es im Ordner abgelegt wird der auch die ntuser.dat enthält
Denn in Deiner Version (userbezogen 1x abarbeiten) würde ein User, der
mal kurzfristig den PC wechselt, an einem anderen PC keinen Drucker haben.
Oder wenn man das File an einer festen, zentralen Stelle ablegt, wo es bei
jeder beliebigen Useranmeldung gefunden wird.
Möglicherweise geht da auch etwas mit ERRORLEVEL statt Datei, die von
rundll32 sind mir aber im Moment nicht bekannt...
--
Viele Grüße
Robert Pieroth

Philipp Röder

unread,
May 22, 2003, 1:52:19 PM5/22/03
to
...und was genau ist so schlimm daran, dass der Drucke
immer neu verbunden wird? Bei uns ist das der Fall und
ich hatte noch keine Probleme damit...

Gruß, Philipp

Holger Schmidt

unread,
May 26, 2003, 2:32:21 PM5/26/03
to
Philipp Röder schrieb:

> ...und was genau ist so schlimm daran, dass der Drucke
> immer neu verbunden wird? Bei uns ist das der Fall und
> ich hatte noch keine Probleme damit...

ich finde es unnötig, netzbelastend, unsauber und rechnerstartverzögernd :-)
geht natürlich auch wenns jedes mal neu verbunden wird, finde ich aber ...

mfg Holger Schmidt

Holger Schmidt

unread,
May 26, 2003, 2:36:53 PM5/26/03
to
Hallo Robert,

danke für deine ausführliche und sehr hilfreiche Mail. Eine
Semaphorendatei wie du sie vorschlägst ist natürlich eine gute Lösung,
ich dachte aber es geht vielleicht auch in den GPO's direkt.


[..]


> solche Sachen fängt man ggf. mit einer 'Bedingten Verzweigung' ab.
> Man prüft also zunächst das Vorliegen/Nichtvorliegen einer bestimmten
> Bedingung und verzweigt dann entsprechend im Script an eine
> andere Stelle. Dafür gibt es den IF - Befehl. Beispiel:
>
> :Stechuhr
> Plonk
> IF "Sonne scheint" == True GOTO Schwimmbad
> :Arbeitsplatz
> GOTO Stechuhr
> :Schwimmbad
> Plansch
> :END

sehr treffend :-)


--
MfG
Holger Schmidt

nichts ist jemals einfach

0 new messages