C# 设置桌面壁纸 Desktop wallpaper
2021-03-30 17:25
标签:key col style oid 桌面 str file enter setw 传入图片路径即可 C# 设置桌面壁纸 Desktop wallpaper 标签:key col style oid 桌面 str file enter setw 原文地址:https://www.cnblogs.com/xyz0835/p/9277609.html public static class Wallpaper
{
const int SPI_SETDESKWALLPAPER = 20;
const int SPIF_UPDATEINIFILE = 0x01;
const int SPIF_SENDWININICHANGE = 0x02;
[DllImport("user32.dll", CharSet = CharSet.Auto)]
static extern int SystemParametersInfo(int uAction, int uParam, string lpvParam, int fuWinIni);
public enum Style : int
{
Fill,
Fit,
Span,
Stretch,
Tile,
Center
}
private static void SetWallPaper(string wpaper, Style style)
{
using (RegistryKey key = Registry.CurrentUser.OpenSubKey(@"Control Panel\Desktop", true))
{
if (style == Style.Fill)
{
key.SetValue(@"WallpaperStyle", 10.ToString());
key.SetValue(@"TileWallpaper", 0.ToString());
}
if (style == Style.Fit)
{
key.SetValue(@"WallpaperStyle", 6.ToString());
key.SetValue(@"TileWallpaper", 0.ToString());
}
if (style == Style.Span) // Windows 8 or newer only!
{
key.SetValue(@"WallpaperStyle", 22.ToString());
key.SetValue(@"TileWallpaper", 0.ToString());
}
if (style == Style.Stretch)
{
key.SetValue(@"WallpaperStyle", 2.ToString());
key.SetValue(@"TileWallpaper", 0.ToString());
}
if (style == Style.Tile)
{
key.SetValue(@"WallpaperStyle", 0.ToString());
key.SetValue(@"TileWallpaper", 1.ToString());
}
if (style == Style.Center)
{
key.SetValue(@"WallpaperStyle", 0.ToString());
key.SetValue(@"TileWallpaper", 0.ToString());
}
}
SystemParametersInfo(SPI_SETDESKWALLPAPER,
0,
wpaper,
SPIF_UPDATEINIFILE | SPIF_SENDWININICHANGE);
}
}
上一篇:C# 获取当前路径方法整理
下一篇:C# 嵌入dll
文章标题:C# 设置桌面壁纸 Desktop wallpaper
文章链接:http://soscw.com/index.php/essay/70078.html