So I guess the forest is completely out of the question, eh?
We use BGInfo pretty heavily, and the one thing I've found is that if you put the image in the Windows folder, it will get created by the first user to log on, and subsequent users will not have permission to change/update it. We use a BG config file on the netlogon share to update the image, which is stored in C:\Temp. We create C:\Temp with Auth-Users:Modify rights, so anyone can overwrite the file easily. We don't ever copy BGInfo.exe or the config file to the local PC - it runs directly from the Netlogon share. Finally, we define the wallpaper through GPO so the user can't modify it.
There's a bug in your code, too.. I'll see if I can't clean it up and post back.
Glenn
_________________________
Actually I
am a Rocket Scientist!