Mögliches Duplikat:
Planen Sie die Änderung des Windows XP-Hintergrundbilds ohne zusätzliche Apps Ich glaube, das ist kein Duplikat, weil ich gefragt habe, wie man den Hintergrund eines anderen Benutzers ändert, nicht des aktuell angemeldeten. Ich weiß bereits, wie das geht. Bitte stimmen Sie dafür, meine Frage erneut zu öffnen.
Ich habe mich gefragt, wie ich den Desktop-Hintergrund eines bestimmten Benutzers ändern kann. Ich verstehe, dass Sie sich das ansehen müssen, HKEY_USERS
aber ich weiß nicht, wie ich weitermachen soll. Ich muss das auch in einer Batchdatei machen. Das ist für Windows XP.
Antwort1
Dies kann mit PowerShell durchgeführt werden:
$user = Get-WMIObject -Query "select * from Win32_UserAccount where Name='<username>'"
$path = 'Registry::HKEY_USERS\' + $user.SID + '\Control Panel\Desktop\'
Set-ItemProperty -path $path -name Wallpaper -value 'C:\path\to\wallpaper.jpg'
rundll32.exe user32.dll UpdatePerUserSystemParameters
Erläuterung:
- Die erste Zeile ruft die Informationen des angegebenen Benutzers mithilfe von WMI ab. Insbesondere benötigen Sie die SID, die diesen Benutzer in der
HKEY_USERS
Registrierungsstruktur identifiziert. Weitere Informationen finden Sie unterWMIObject abrufen,Win32_UserAccount-KlasseUndAbfragen mit WQL. - Die zweite Zeile erstellt lediglich den Pfad zum richtigen Registrierungsschlüssel.
- Die dritte Zeile setzt den Wert des angegebenen Eintrags unter dem angegebenen Registrierungsschlüssel. SieheSetze ItemPropertyfür mehr Informationen.
- Die vierte Zeile erzwingt eine Aktualisierung des Hintergrundbilds. Dies ist nur erforderlich, wenn der angegebene Benutzer angemeldet ist und die Änderung sofort wirksam werden soll.