Windows Wallpaper via CSP Personalization
Description
This article explains how to enforce or remove a desktop and/or lock screen wallpaper on Windows 10 and Windows 11 devices using the MDM Personalization CSP through PowerShell.
These scripts leverage the WMI Bridge Provider, allowing configuration at the device level via FileWave without requiring Active Directory Group Policy.
Two PowerShell scripts are provided:
-
Wallpaper Deployment Script: Applies a desktop and/or lock screen image.
-
Wallpaper Removal Script: Removes the applied configuration, returning wallpaper control to the end user.
These scripts are designed for deployment through FileWave as a Custom Fileset and run under the SYSTEM account to ensure MDM Bridge access.
Ingredients
- FileWave Administrator
-
FileWave Admin Console access
-
Windows 10/11 Enterprise or Education (Pro supported only if SharedPC Edu Policies are applied)
-
SYSTEM-level PowerShell execution (default for FileWave scripts)
-
(Optional) Custom wallpaper image(s) deployed via FileWave
-
(Optional) Access to the MDM Bridge Provider (
root\cimv2\mdm\dmmap)
| Example Windows Fileset |
![]() |
Directions
Configure the Wallpaper Deployment script
-
-
In FileWave Admin, create a new Fileset → Windows Wallpaper (Windows).
-
Use example Windows Fileset to copy as the PowerShell script to create an Activation Script.
-
Configure Environment Variables:
-
Deploy the wallpaper; verify in logs, example output:
-
[2025-10-30T16:20:32] [INFO] Normalized DesktopImageUrl -> file:///C:/ProgramData/FileWave/wallpaper/FileWaveDark.jpg
[2025-10-30T16:20:33] [INFO] Setting DesktopImageUrl: file:///C:/ProgramData/FileWave/wallpaper/FileWaveDark.jpg
[2025-10-30T16:20:33] [INFO] CSP values committed via WMI Bridge.
[2025-10-30T16:20:43] [INFO] DesktopImageStatus=1 (Success)
[2025-10-30T16:20:43] [INFO] Wallpaper configuration completed.
Configure the Wallpaper Removal script
-
Configure the Windows Wallpaper Fileset.
-
Paste from the example Windows Fileset PowerShell script to create a Post-Uninstalltion script.
-
Configure optional Environment Variables:
-
Associate this Fileset with the same or a different group.
-
Deploy to remove enforced wallpaper policy.
Expected log output:
[2025-10-30T16:09:26] [INFO] Wallpaper removal script initiated.
[2025-10-30T16:09:26] [INFO] Options: CLEAR_DESKTOP=True, CLEAR_LOCKSCREEN=True, REG_CLEANUP=True, RESTART_EXPLORER=True
[2025-10-30T16:09:27] [INFO] Connected to MDM Bridge Provider successfully.
[2025-10-30T16:09:27] [INFO] Cleared DesktopImageUrl via null assignment (CSP Delete).
[2025-10-30T16:09:27] [WARN] Null clear failed for LockScreenImageUrl. Trying empty string...
[2025-10-30T16:09:27] [ERROR] Failed to clear LockScreenImageUrl. The requested operation is not supported.
[2025-10-30T16:09:27] [INFO] DesktopImageUrl now='' (Status= Unknown)
[2025-10-30T16:09:27] [INFO] LockScreenImageUrl now='' (Status= Unknown)
[2025-10-30T16:09:27] [INFO] Restarting Explorer shell...
[2025-10-30T16:09:27] [INFO] Explorer restarted.
[2025-10-30T16:09:27] [INFO] Wallpaper policy removal completed successfully.
Notes
-
Both scripts must execute as SYSTEM to access the MDM Bridge Provider.
-
Enterprise/Education SKUs support these CSPs natively; Pro requires SharedPC Edu Policies.
-
Image URIs must be valid:
-
For local paths →
file:///C:/path/to/image.jpg -
For network/HTTP →
https://domain.com/wallpaper.jpg
-
-
Using
file:///paths improves reliability because it doesn’t rely on external network access. -
When enforced via CSP, the wallpaper is locked and users cannot change it until the CSP node is cleared.
-
Registry mirror cleanup ensures Settings no longer display stale wallpaper values.




