![]() |
|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Пользователь
Регистрация: 05.10.2007
Сообщений: 34
|
![]()
Как отследить изменение фона рабочаго стола?
|
![]() |
![]() |
![]() |
#2 |
Laravel/Vue expert
Старожил Подтвердите свой е-майл
Регистрация: 08.08.2007
Сообщений: 2,832
|
![]()
в реестре. мониторинг ветви можешь сделать.
HKEY_CURRENT_USER\Control Panel\Desktop |
![]() |
![]() |
![]() |
#3 |
я получил эту роль
Старожил
Регистрация: 25.05.2007
Сообщений: 3,694
|
![]()
Ждать сообщения WM_SETTINGCHANGE (?)
или WM_WININICHANGE -- во, точно, проверил - WM_WININICHANGE работает ![]() ЗЫ: оно приходит и при изменении других настроек, так что как прийдёт - читай реестр и сравнивай имя обоины с предыдущим, не совпадает - значит изменилось
пыщь
Последний раз редактировалось JTG; 11.10.2007 в 15:25. |
![]() |
![]() |
![]() |
#4 |
добрый няша
Старожил
Регистрация: 29.10.2006
Сообщений: 4,804
|
![]() Код:
|
![]() |
![]() |
![]() |
#5 |
Пользователь
Регистрация: 05.10.2007
Сообщений: 34
|
![]()
Уж было обрадовался!
Очень жаль, но не работает.... ![]() Может оно работает в XP, но в 2000-ой, точно, события WM_WININICHANGE и WM_SETTINGCHANGE, при смене фона не вызываются..... Они тут вызываются только при включении и отключении Active Desktop Последний раз редактировалось Legat; 13.10.2007 в 19:04. |
![]() |
![]() |
![]() |
#6 |
Форумчанин
Регистрация: 23.09.2007
Сообщений: 147
|
![]()
А как просто запретить его менять администратору, без отслеживания
Кстати WM_WININICHANGE=WM_SETTINGCHANGE Но у мя не работает отслеживание этой мессаги, ловушку ставил нормально, через ддлку, как обычно, при старте ловушки идёт первая проверка реестра, а потом если в ловушку типа WH_GETMESSAGE попало WM_WININICHANGE то идёт проверка на соответствие как в коде Грузина и если несоответствие, то высвечивается мессага о том, что рабочий стол менять нельзя, и все записи меняються на прежние, но это не проходит, спокойно меняю рабочий стол В чём косяк
Я надеваю тапочки, ищу чем похмелиться, ах, если я сейчас умру, то на... я родился
|
![]() |
![]() |
![]() |
#7 |
добрый няша
Старожил
Регистрация: 29.10.2006
Сообщений: 4,804
|
![]()
как ты устанавливаешь фон?
|
![]() |
![]() |
![]() |
#8 |
Форумчанин
Регистрация: 23.09.2007
Сообщений: 147
|
![]()
Свойства экрана - рабочий стол - обзор
Собственно наиболее популярный способ Ладно даю код длл Код:
Не знаю может не юзать VCL, а написать реестр на winapi, может косяков не будет, но мне было впадлу Простите если есть ошибки в коде я не очень шарю
Я надеваю тапочки, ищу чем похмелиться, ах, если я сейчас умру, то на... я родился
Последний раз редактировалось joker; 23.10.2007 в 13:09. |
![]() |
![]() |
![]() |
#9 |
добрый няша
Старожил
Регистрация: 29.10.2006
Сообщений: 4,804
|
![]()
я хотел спросить про то как ты установливаешь старые обои...
сначала попробуй function SysMsgProc(code:integer; wParam,lparam:DWORD):longint;stdcall; во вторых у меня твоя Dll'ка вообще не нработает!!! и не представляю как вообще она у тебя работает. в-третьих формат функции перехватчика при флаге WH_GETMESSAGE Код:
lparam указывает на структуру TMSG!!! и через него то ты и должен получать код сообщения с учётом всего этого, надо объявлять функцию так function SysMsgProc(code:integer; wParam:DWORD;lparam: pointer):longint;stdcall; Последний раз редактировалось rpy3uH; 23.10.2007 в 20:47. |
![]() |
![]() |
![]() |
#10 |
Форумчанин
Регистрация: 23.09.2007
Сообщений: 147
|
![]()
Блин всё равно не пашет, может там надо какой-нибудь флаг в из кода обрабатывать типа if code = HC_XXXX?
Короче суть в том, что оба параметра в реестре (wallpaper и originalwallpaper)всегда равны C:\Documents and Settings\Администратор\Local Settings\Application Data\Microsoft\Wallpaper1.bmp и в принципе не меняются, меняется сам файл, как отследить изменение файла?
Я надеваю тапочки, ищу чем похмелиться, ах, если я сейчас умру, то на... я родился
|
![]() |
![]() |
![]() |
|
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
как отследить изменения в базе данных | unit-85 | Помощь студентам | 2 | 13.08.2008 11:29 |
Как отследить нажатие кнопки Обновить из PHP? | Timpi | PHP | 4 | 11.07.2008 09:16 |
Как отследить направление движения мыши? | yourself | Общие вопросы Delphi | 8 | 30.05.2008 08:04 |
Как отследить отпускание клавиши? | Zefick | Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM | 2 | 27.05.2008 19:14 |
Изменение фона текущей строки | puky | Microsoft Office Access | 1 | 09.02.2007 12:05 |