intento cambiar el fondo de pantalla del escritorio de window7(ultimate) con una aplicacion en C#
encontre este codigo.. pero no me funciona...
 
...
using System.Security;
using System.Runtime.InteropServices;
using Microsoft.Win32;
...
 
...
[SuppressUnmanagedCodeSecurity, SecurityCritical,
        DllImport("user32.dll", CharSet = CharSet.Auto,
        SetLastError = true)]
        public static extern bool SystemParametersInfo(int nAction,
        int nParam, string value, int ignore); 
...
 
 
...
 
static void Main(params string[] args)
{
string wallpaper = args[0];
//Si la direccion tiene espacios, se pasa como
//varios argumentos.Para completar la ruta,
//se tienen que concatenar dichos argumentos.
for(int i = 1; i < args.Length; i++)
wallpaper += " " + args[i];
//Con esta API se pone de fondo de escritorio
//la imagen pasada como parametro en wallpaper
SystemParametersInfo(20, 0, wallpaper, 0);
 
//Aqui se actualiza en el registro
//la direccion del wallpaper
Registry.CurrentUser.OpenSubKey("Control Panel\\Desktop",
RegistryKeyPermissionCheck.ReadWriteSubTree)
.SetValue("Wallpaper", wallpaper,
RegistryValueKind.String);
} 
...
 
 
alguna ayudita plx! 
  
 

