Ver Mensaje Individual
  #1 (permalink)  
Antiguo 16/05/2011, 11:23
danielwish
 
Fecha de Ingreso: mayo-2009
Ubicación: Santiago
Mensajes: 10
Antigüedad: 15 años
Puntos: 0
Cambiar tema de escritorio con C#

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!