X
xxXdEpHiLXxx
Gast
Hallo Leute,
Ich bin auf der suche nach einer einfachen Möglichkeit den Windows Hintergrund zu ändern.
Ich bin auf folgenden Code gestoßen.
Ändern tut man den Wallpaper dan mit:
Das klappt auch alles so wie ich es möchte. Da ich aber die Bitmap in das Programm integrieren möchte (als Ressource?) damit es auch auf anderen PC's als Bild genutzt werden kann, möchte ich euch fragen wie ich das realisieren könnte.
Bin für alle ernst gemeinten Antworten Dankbar
MfG Phil
Ich bin auf der suche nach einer einfachen Möglichkeit den Windows Hintergrund zu ändern.
Ich bin auf folgenden Code gestoßen.
Code:
public class Wallpaper
{
const int SPI_SETDESKWALLPAPER = 20;
const int SPIF_UPDATEINIFILE = 0x01;
const int SPIF_SENDWININICHANGE = 0x02;
public Wallpaper()
{
}
[DllImport("user32.dll", CharSet = CharSet.Auto)]
static extern int SystemParametersInfo(
int uAction, int uParam, string lpvParam, int fuWinIni);
public enum Style : int
{
Tiled, Centered, Stretched
}
public void SetWallpaper(string path, Style style)
{
if (System.IO.File.Exists(path))
{
RegistryKey key = Registry.CurrentUser.OpenSubKey("Control Panel\\Desktop", true);
switch (style)
{
case Style.Stretched:
key.SetValue(@"WallpaperStyle", "2");
key.SetValue(@"TileWallpaper", "0");
break;
case Style.Centered:
key.SetValue(@"WallpaperStyle", "1");
key.SetValue(@"TileWallpaper", "0");
break;
case Style.Tiled:
key.SetValue(@"WallpaperStyle", "1");
key.SetValue(@"TileWallpaper", "1");
break;
}
SystemParametersInfo(SPI_SETDESKWALLPAPER, 0, path, SPIF_UPDATEINIFILE | SPIF_SENDWININICHANGE);
}
else
{
throw new System.IO.FileNotFoundException();
}
}
}
Ändern tut man den Wallpaper dan mit:
Code:
Wallpaper lol = new Wallpaper();
lol.SetWallpaper(@"PfadzuderBitmapDatei", Wallpaper.Style.Centered);
Das klappt auch alles so wie ich es möchte. Da ich aber die Bitmap in das Programm integrieren möchte (als Ressource?) damit es auch auf anderen PC's als Bild genutzt werden kann, möchte ich euch fragen wie ich das realisieren könnte.
Bin für alle ernst gemeinten Antworten Dankbar
MfG Phil