Смена обоев рабочего стола C# WinForms
Цитата: Удаленный пользователь от 29.06.2022, 01:01Всем привет👋
Хочу сменить обои по кнопке (сами обои возле приложения).
Облазил пол интернета в поисках хорошего кода но нахожу только какие то костыли где можно только bmp поставить и такого плана.
Может кто делал для себя такое приложение и может поделиться методом? Заранее спасибо.
Всем привет👋
Хочу сменить обои по кнопке (сами обои возле приложения).
Облазил пол интернета в поисках хорошего кода но нахожу только какие то костыли где можно только bmp поставить и такого плана.
Может кто делал для себя такое приложение и может поделиться методом? Заранее спасибо.
Цитата: Удаленный пользователь от 29.06.2022, 01:16Доброй ночи.
[spoiler title="Код"][DllImport("user32.dll", CharSet = CharSet.Auto)] static extern int SystemParametersInfo(int uAction, int uParam, string lpvParam, int fuWinIni); int MAX_PATH = 260; int SPI_GETDESKWALLPAPER = 0x73; int SPI_SETDESKWALLPAPER = 0x14; int SPIF_UPDATEINIFILE = 0x01; int SPIF_SENDWININICHANGE = 0x02; string GetDesktopWallpaper() { string wallpaper = new string('\0', MAX_PATH); SystemParametersInfo(SPI_GETDESKWALLPAPER, (int)wallpaper.Length, wallpaper, 0); return wallpaper.Substring(0, wallpaper.IndexOf('\0')); } void SetDesktopWallpaper(string filePath) { SystemParametersInfo(SPI_SETDESKWALLPAPER, 0, filePath, SPIF_UPDATEINIFILE | SPIF_SENDWININICHANGE); }[/spoiler]
Доброй ночи.
[DllImport("user32.dll", CharSet = CharSet.Auto)]
static extern int SystemParametersInfo(int uAction, int uParam, string lpvParam, int fuWinIni);
int MAX_PATH = 260;
int SPI_GETDESKWALLPAPER = 0x73;
int SPI_SETDESKWALLPAPER = 0x14;
int SPIF_UPDATEINIFILE = 0x01;
int SPIF_SENDWININICHANGE = 0x02;
string GetDesktopWallpaper() {
string wallpaper = new string('\0', MAX_PATH);
SystemParametersInfo(SPI_GETDESKWALLPAPER, (int)wallpaper.Length, wallpaper, 0);
return wallpaper.Substring(0, wallpaper.IndexOf('\0'));
}
void SetDesktopWallpaper(string filePath) {
SystemParametersInfo(SPI_SETDESKWALLPAPER, 0, filePath, SPIF_UPDATEINIFILE | SPIF_SENDWININICHANGE);
}
Цитата: Удаленный пользователь от 30.06.2022, 02:03Цитата: yuri от 29.06.2022, 01:16Доброй ночи.
[spoiler title="Код"][DllImport("user32.dll", CharSet = CharSet.Auto)]static extern int SystemParametersInfo(int uAction, int uParam, string lpvParam, int fuWinIni);int MAX_PATH = 260;int SPI_GETDESKWALLPAPER = 0x73;int SPI_SETDESKWALLPAPER = 0x14;int SPIF_UPDATEINIFILE = 0x01;int SPIF_SENDWININICHANGE = 0x02;string GetDesktopWallpaper() {string wallpaper = new string('\0', MAX_PATH);SystemParametersInfo(SPI_GETDESKWALLPAPER, (int)wallpaper.Length, wallpaper, 0);return wallpaper.Substring(0, wallpaper.IndexOf('\0'));}void SetDesktopWallpaper(string filePath) {SystemParametersInfo(SPI_SETDESKWALLPAPER, 0, filePath, SPIF_UPDATEINIFILE | SPIF_SENDWININICHANGE);}[DllImport("user32.dll", CharSet = CharSet.Auto)] static extern int SystemParametersInfo(int uAction, int uParam, string lpvParam, int fuWinIni); int MAX_PATH = 260; int SPI_GETDESKWALLPAPER = 0x73; int SPI_SETDESKWALLPAPER = 0x14; int SPIF_UPDATEINIFILE = 0x01; int SPIF_SENDWININICHANGE = 0x02; string GetDesktopWallpaper() { string wallpaper = new string('\0', MAX_PATH); SystemParametersInfo(SPI_GETDESKWALLPAPER, (int)wallpaper.Length, wallpaper, 0); return wallpaper.Substring(0, wallpaper.IndexOf('\0')); } void SetDesktopWallpaper(string filePath) { SystemParametersInfo(SPI_SETDESKWALLPAPER, 0, filePath, SPIF_UPDATEINIFILE | SPIF_SENDWININICHANGE); }[DllImport("user32.dll", CharSet = CharSet.Auto)] static extern int SystemParametersInfo(int uAction, int uParam, string lpvParam, int fuWinIni); int MAX_PATH = 260; int SPI_GETDESKWALLPAPER = 0x73; int SPI_SETDESKWALLPAPER = 0x14; int SPIF_UPDATEINIFILE = 0x01; int SPIF_SENDWININICHANGE = 0x02; string GetDesktopWallpaper() { string wallpaper = new string('\0', MAX_PATH); SystemParametersInfo(SPI_GETDESKWALLPAPER, (int)wallpaper.Length, wallpaper, 0); return wallpaper.Substring(0, wallpaper.IndexOf('\0')); } void SetDesktopWallpaper(string filePath) { SystemParametersInfo(SPI_SETDESKWALLPAPER, 0, filePath, SPIF_UPDATEINIFILE | SPIF_SENDWININICHANGE); }[/spoiler]
Доброй ночи.
Спасибо, буду пробовать.
Цитата: yuri от 29.06.2022, 01:16Доброй ночи.
Код[DllImport("user32.dll", CharSet = CharSet.Auto)]static extern int SystemParametersInfo(int uAction, int uParam, string lpvParam, int fuWinIni);int MAX_PATH = 260;int SPI_GETDESKWALLPAPER = 0x73;int SPI_SETDESKWALLPAPER = 0x14;int SPIF_UPDATEINIFILE = 0x01;int SPIF_SENDWININICHANGE = 0x02;string GetDesktopWallpaper() {string wallpaper = new string('\0', MAX_PATH);SystemParametersInfo(SPI_GETDESKWALLPAPER, (int)wallpaper.Length, wallpaper, 0);return wallpaper.Substring(0, wallpaper.IndexOf('\0'));}void SetDesktopWallpaper(string filePath) {SystemParametersInfo(SPI_SETDESKWALLPAPER, 0, filePath, SPIF_UPDATEINIFILE | SPIF_SENDWININICHANGE);}[DllImport("user32.dll", CharSet = CharSet.Auto)] static extern int SystemParametersInfo(int uAction, int uParam, string lpvParam, int fuWinIni); int MAX_PATH = 260; int SPI_GETDESKWALLPAPER = 0x73; int SPI_SETDESKWALLPAPER = 0x14; int SPIF_UPDATEINIFILE = 0x01; int SPIF_SENDWININICHANGE = 0x02; string GetDesktopWallpaper() { string wallpaper = new string('\0', MAX_PATH); SystemParametersInfo(SPI_GETDESKWALLPAPER, (int)wallpaper.Length, wallpaper, 0); return wallpaper.Substring(0, wallpaper.IndexOf('\0')); } void SetDesktopWallpaper(string filePath) { SystemParametersInfo(SPI_SETDESKWALLPAPER, 0, filePath, SPIF_UPDATEINIFILE | SPIF_SENDWININICHANGE); }[DllImport("user32.dll", CharSet = CharSet.Auto)] static extern int SystemParametersInfo(int uAction, int uParam, string lpvParam, int fuWinIni); int MAX_PATH = 260; int SPI_GETDESKWALLPAPER = 0x73; int SPI_SETDESKWALLPAPER = 0x14; int SPIF_UPDATEINIFILE = 0x01; int SPIF_SENDWININICHANGE = 0x02; string GetDesktopWallpaper() { string wallpaper = new string('\0', MAX_PATH); SystemParametersInfo(SPI_GETDESKWALLPAPER, (int)wallpaper.Length, wallpaper, 0); return wallpaper.Substring(0, wallpaper.IndexOf('\0')); } void SetDesktopWallpaper(string filePath) { SystemParametersInfo(SPI_SETDESKWALLPAPER, 0, filePath, SPIF_UPDATEINIFILE | SPIF_SENDWININICHANGE); }
Доброй ночи.
Спасибо, буду пробовать.