dev.net.ua

Українська Спільнота Розробникiв
 
Ласкаво просимо до dev.net.ua Увійти | Приєднатися | Допомога | Увійти Live ID
в Пошук

Смена обоев рабочего стола

Останнє повідомлення 14-06-2008, 13:33 від Alexey. 4 відповіді.
Сортувати: Попереднє Наступне
  •  12-06-2008, 7:49 6310

    Confused [*-)] Смена обоев рабочего стола

    Подскажите пожалуйста как в C# сменить обои рабочего стола на картинку по указанному пути.
    Заранее благодарен
  •  13-06-2008, 1:11 6313 у відповідь на 6310

    Re: Смена обоев рабочего стола

    Alexey:
    Подскажите пожалуйста как в C# сменить обои рабочего стола на картинку по указанному пути. Заранее благодарен

    class ChangeWallpaper

    {
        [DllImport("user32.dll", CharSet=CharSet.Auto)]
        public static extern int SystemParametersInfo (int uAction , int uParam , string lpvParam , int fuWinIni) ;
        public const int SPI_SETDESKWALLPAPER = 20;
        public const int SPIF_SENDCHANGE = 0x2;

        Main()
        {
            //only bmp format!!!
           //if not change it to bmp programmatically
            string fileName = @"C:\myfile.bmp";
            int nResult = SystemParametersInfo(SPI_SETDESKWALLPAPER,1,fileName,SPIF_SENDCHANGE);
        }

    }



    С уважением, Вячеслав
    Помічено як:
  •  13-06-2008, 7:27 6315 у відповідь на 6313

    Re: Смена обоев рабочего стола

    Я понял идею только на строчке
    [DllImport("user32.dll", СharSet=CharSet.Auto)]
    появляется ошибка которая вообще не к месту по-моему "The type or namespace name 'DllImport' could not be found (are you missing a using directive or an assembly reference?)"
    В подсказчике ничего похожего на присоединение dll-ки не отображается
  •  14-06-2008, 2:33 6316 у відповідь на 6315

    Re: Смена обоев рабочего стола

    Alexey:
    Я понял идею только на строчке [DllImport("user32.dll", СharSet=CharSet.Auto)] появляется ошибка которая вообще не к месту по-моему "The type or namespace name 'DllImport' could not be found (are you missing a using directive or an assembly reference?)" В подсказчике ничего похожего на присоединение dll-ки не отображается

    Разбираемся с ошибкой
    are you missing a using directive or an assembly reference?
    Смотрим в MSDN информацию об атрибуте DllImport

    Namespace:  System.Runtime.InteropServices
    Assembly:  mscorlib (in mscorlib.dll)

    mscorlib автоматически покдючается к .NET проектам (его конечно можно отключить, но думаю Вы это специально не делали),
    значит не хватает директивы
    using System.Runtime.InteropServices;




    С уважением, Вячеслав
    Помічено як:
  •  14-06-2008, 13:33 6320 у відповідь на 6316

    Re: Смена обоев рабочего стола

    Со всем разобрался, большое спасибо

Переглядати як новосний Блог RSS в XML