So ändern Sie den Desktop-Hintergrund eines bestimmten Benutzers in einer Batchdatei

So ändern Sie den Desktop-Hintergrund eines bestimmten Benutzers in einer Batchdatei

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_USERSaber 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_USERSRegistrierungsstruktur 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.

verwandte Informationen