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
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
Gruß, Philipp
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
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