![]() |
Модераторы: Partizan, gambit |
![]() ![]() ![]() |
|
Magnetic |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 111 Регистрация: 11.11.2006 Репутация: нет Всего: 1 |
Нужно сохранить фоновое изображение рабочего стола в файл, чтобы после смены заставки восстановить прежнюю в случае необходимости
Думал, что Graphics из рабочего стола поможет:
но таким образом получается обычный принтскрин. --------------------
Dude, where's my car? |
|||
|
||||
Walker |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 363 Регистрация: 23.10.2006 Репутация: 5 Всего: 16 |
Так ведь это изображение и так хранится в файле. Путь к нему - значение параметра Wallpaper в разделе реестра HKEY_CURRENT_USER\Control Panel\Desktop. Используя его, скопируйте изображение в нужное Вам место.
-------------------- "От вчерашних побед остаётся усталость, если завтрашний день не сулит ничего..." |
|||
|
||||
Magnetic |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 111 Регистрация: 11.11.2006 Репутация: нет Всего: 1 |
Спасибо, получилось таким образом считать файл с заставкой. Но есть одна особенность, может пригодится знать на будущее. Программно меняю обои при помощи функции из WinApi SystemParametersInfo. При этом визуально обои успешно устанавливаются, но указанное вами значение реестра и файл, на который это значение указывает, не меняются, следовательно, не соответствуют текущим обоям. Если менять заставку через свойства рабочего стола, то значение Wallpaper в реестре указывает на файл, который соответсвует заставке. Будет ли пользователь менять обои через свойства рабочего стола или нет неизвестно. Пролему решил таким образом: после программной замены заставки функцией SystemParametersInfo изменяю значение параметра реестра Wallpaper на путь к файлу, который только что поставил на стол. При таком подходе можно положиться на правильное значение параметра Wallpaper.
--------------------
Dude, where's my car? |
|||
|
||||
![]() ![]() ![]() |
Прежде чем создать тему, посмотрите сюда: | |
|
Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов. Что делать если Вам помогли, но отблагодарить помощника плюсом в репутацию Вы не можете(не хватает сообщений)? Пишите сюда, или отправляйте репорт. Поставим :) Так же не забывайте отмечать свой вопрос решенным, если он таковым является :) Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, mr.DUDA, THandle. |
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Общие вопросы по .NET и C# | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |