ahstax
Goto Top

Logonscreen in Win7 ändern

Hallo,

Ich lasse über eine Gruppenrichtlinie beim Starten von Win7-PCs eine Batch-Datei ausführen, um den Logonscreen zu ändern. Die Batch-Datei sieht auszugsweise so aus:

@echo off
chcp 1252

if not exist C:\Windows\System32\oobe\info\ (
	md C:\Windows\System32\oobe\info
)

rem Sichern der "alten" Backgrounds"  
if not exist C:\Windows\System32\oobe\info\backupbackgrounds\ (
	if exist C:\Windows\System32\oobe\info\backgrounds\ (
		rename C:\Windows\System32\oobe\info\backgrounds backupbackgrounds
	)  else (
		md C:\Windows\System32\oobe\info\backgrounds
	)
)

rem Kopieren der neuen Backgrounds
xcopy "\\Server\Quell\Verzeichnis\bla...bla\background*.jpg" "C:\Windows\System32\oobe\info\backgrounds\" /y  

chcp 437

Die Gruppenrichtlinie wird angewendet. Sie ist eingerichtet für
  • CPU-konfig\Richtlinien\Win-Einstellungen\Skripts\Start
  • User-konfig\Richtlinien\Win-Einstellungen\Skripts\Anmelden

Die Richtlinie umfasst außerdem einen Registryeintrag:
SOFTWARE\Microsoft\Windows\CurrentVersion\Authentication\LogonUI\Background --> OEMBackground (REG_DWORD) --> Wert "1"

Trotzdem werden die neuen Backgrounds nicht kopiert.

Kann mir bitte jemand weiterhelfen?

Neugierige Grüße,
Andreas

Content-Key: 260638

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

Printed on: April 19, 2024 at 00:04 o'clock

Mitglied: 118534
118534 Jan 21, 2015 at 15:38:08 (UTC)
Goto Top
Wenn du versuchst, die Backgrounds manuell zu ändern, was passiert dann?
Marco
Member: ahstax
ahstax Jan 21, 2015 at 15:43:52 (UTC)
Goto Top
Hallo Marco,

der normale User hat keine Berechtigung. Ich hoffte, dass beim booten das System ausreichend Macht hätte?!?

Andreas
Mitglied: 118534
118534 Jan 21, 2015 at 15:45:17 (UTC)
Goto Top
Hallo,
Melde dich local als Admin an und starte den Skript
Marco
Member: Borob14
Borob14 Jan 21, 2015 at 16:27:49 (UTC)
Goto Top
Hi,

ich denke du lässt die GPO nicht auf die PCs wirken sondern nur auf eine User Gruppe oder OU mit Usern?
Bitte mal prüfen. Am besten ne Test OU und in der GPO dann authentifizierter User rein. (da zählen PCs mit dazu)

mfg Rob
Member: emeriks
emeriks Jan 21, 2015 at 17:54:10 (UTC)
Goto Top
Hi,
Du könntest auch eine "geplante Aufgabe" erstellen (geht auch per GPO) und diese das Script ausführen lassen, als Local System und "mit höchsten Rechten".

E.
Member: ahstax
ahstax Jan 22, 2015 at 07:48:09 (UTC)
Goto Top
Hallo miteinander,

@118534: das ist ja aber doch eigentlich genau das, was ich vermeiden möchte, oder verstehe ich Dich falsch?
@Borob14:Die GPO wirkt auf die PCs. Die PCs sind in einer Gruppe, die in den Sicherheitseinstellungen hinterlegt ist.
@emeriks: das wäre vielleicht ein Ansatz...

Wäre es / gibt es eventuell eine Möglichkeit, mit der Batch-Datei Zugriffsrechte bzw Besitz an dem Ordner C:\Windows\System32\oobe\info\backgrounds\ zu ändern?

Andreas
Mitglied: 118534
118534 Jan 22, 2015 at 07:49:19 (UTC)
Goto Top
Hallo,
mach das wie es emeriks beschrieben hat. Das müsste funktionieren.
Gruß Marco
Member: Borob14
Borob14 Jan 22, 2015 at 08:05:45 (UTC)
Goto Top
Hi,

die Computer-Konfiguration hat lokale Systemrechte und ist somit ADM, du schreibst du hast bei Computer und bei User den Script hinterlegt, hast du den gesplittet oder rufst du den 2 mal auf? Das mit der Aufgabenplanung ist sonst natürlich auch ne Lösung es sollte aber über die Computer-Konf. funktionieren.
Alternativ gibt's ja noch Computer-konf. -> Einstellungen -> Windows-Einstellungen -> Dateien.

mfg Rob
Member: ahstax
ahstax Jan 22, 2015 at 08:46:40 (UTC)
Goto Top
Ich rufe das Script aktuell zwei mal auf. Ich habe es aber auch schon einzeln probiert. Dieses Ziel, in dem ich Änderungen vornehmen möchte, scheint etwas "besonderes" zu sein...
Member: Shioku
Shioku Jan 22, 2015 at 09:33:12 (UTC)
Goto Top
Hi,

hat das System überhaupt Zugriff auf den Netzwerkpfad? (Ist ja noch keine Useranmeldung beim Systemstart vorhanden)

Gruß
Member: Borob14
Borob14 Jan 22, 2015 at 09:49:13 (UTC)
Goto Top
Was Shioku sagt stimmt natürlich, der Server sollte natürlich die Domaincomputer auf diesen Pfad lassen aber ich denke mal daran wird der Threadersteller gedacht haben!?
Member: ahstax
ahstax Jan 22, 2015 at 09:53:49 (UTC)
Goto Top
Hallo,

zwischenzeitlich habe ich das mit dem geplanten Task ausprobiert und auch "hinbekommen", zumindest läuft das Script durch. Der Task wird bei jedem Anmeldevorgang eines Users ausgeführt und als ausführender User ist der Domänen-Administrator hinterlegt. Netzwerkzugang ist in dem Stadium bereits vorhanden.
Allerdings wird nur der Ordner "C:\Windows\System32\oobe\info\backgrounds" in "backupbackgrounds" umbenannt, ein neuer Ordner wird nicht erstellt.
Interessant ist vielleicht noch, dass als Besitzer des Ordners "C:\Windows\System32\oobe" und "C:\Windows\System32\oobe\info" ein "TrustedInstaller" eingetragen ist, als Besitzer des Ordners "C:\Windows\System32\oobe\info\backupbackgrounds" ist als Besitzer "SYSTEM" hinterlegt.
Könnte es an mangelnden Berechtigungen liegen?
Member: SlainteMhath
SlainteMhath Jan 22, 2015 at 10:08:15 (UTC)
Goto Top
Moin,

das Script muss/darf nur beim Start laufen, nicht beim Anmelden (der User hat idR keine Schreibrechte auf HKLM oder %windir%
Auf die Freigabe am Server muss der User "Jeder" oder die Domänengruppe "Domaincomputers" Leserechte haben.

Allerdings wird nur der Ordner "C:\Windows\System32\oobe\info\backgrounds" in "backupbackgrounds" umbenannt, ein neuer Ordner wird nicht erstellt.
Genau das steht so in deinem Script
Wenn existent, dann umbenennen, sonst erstellen...
if exist C:\Windows\System32\oobe\info\backgrounds\ (
rename C:\Windows\System32\oobe\info\backgrounds backupbackgrounds
) else (
md C:\Windows\System32\oobe\info\backgrounds
)

lg,
Slainte
Member: emeriks
emeriks Jan 22, 2015 updated at 12:23:02 (UTC)
Goto Top
Du könntest statt xcopy auch robocopy benutzen. Dieses hat den Schalter "/B", welcher bewirkt, dass der Prozess mit aktivierten Backup-Operator-Privilegien ausgeführt wird. (Das geht natürlich nur, wenn der Benutzer, unter welchem robocopy läuft, entsprechende Rechte hat. i.A. lokale Administratoren und Local System)

"mit höchste Rechte ausführen" bedeutet eben nicht, dass auch alle Privilegien aktiv sind. Es bedeutet nur, dass diese von den Prozessen, welche damit ausgeführt werden, diese Privilegien aktivieren können, wenn sie sowas unterstützen. Xcopy kann sowas nicht. Wenn der Benutzer, unter welchem der Task läuft, also lokaler Admin ist, als solcher aber keine Schreibrechte auf einen Ordner hat, dann kann er dort auch nichts erstellen oder mit xcopy hin kopieren. "robocopy .... /b " dann schon.

E.