|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
11.10.2007, 11:12 | #1 |
Пользователь
Регистрация: 05.10.2007
Сообщений: 34
|
Как отследить изменение фона рабочаго стола
Как отследить изменение фона рабочаго стола?
|
11.10.2007, 14:10 | #2 |
Laravel/Vue expert
Старожил Подтвердите свой е-майл
Регистрация: 08.08.2007
Сообщений: 2,832
|
в реестре. мониторинг ветви можешь сделать.
HKEY_CURRENT_USER\Control Panel\Desktop |
11.10.2007, 15:12 | #3 |
я получил эту роль
Старожил
Регистрация: 25.05.2007
Сообщений: 3,694
|
Ждать сообщения WM_SETTINGCHANGE (?)
или WM_WININICHANGE -- во, точно, проверил - WM_WININICHANGE работает ЗЫ: оно приходит и при изменении других настроек, так что как прийдёт - читай реестр и сравнивай имя обоины с предыдущим, не совпадает - значит изменилось
пыщь
Последний раз редактировалось JTG; 11.10.2007 в 15:25. |
11.10.2007, 19:46 | #4 |
добрый няша
Старожил
Регистрация: 29.10.2006
Сообщений: 4,804
|
Код:
|
13.10.2007, 19:02 | #5 |
Пользователь
Регистрация: 05.10.2007
Сообщений: 34
|
Уж было обрадовался!
Очень жаль, но не работает.... Может оно работает в XP, но в 2000-ой, точно, события WM_WININICHANGE и WM_SETTINGCHANGE, при смене фона не вызываются..... Они тут вызываются только при включении и отключении Active Desktop Последний раз редактировалось Legat; 13.10.2007 в 19:04. |
22.10.2007, 14:12 | #6 |
Форумчанин
Регистрация: 23.09.2007
Сообщений: 147
|
А как просто запретить его менять администратору, без отслеживания
Кстати WM_WININICHANGE=WM_SETTINGCHANGE Но у мя не работает отслеживание этой мессаги, ловушку ставил нормально, через ддлку, как обычно, при старте ловушки идёт первая проверка реестра, а потом если в ловушку типа WH_GETMESSAGE попало WM_WININICHANGE то идёт проверка на соответствие как в коде Грузина и если несоответствие, то высвечивается мессага о том, что рабочий стол менять нельзя, и все записи меняються на прежние, но это не проходит, спокойно меняю рабочий стол В чём косяк
Я надеваю тапочки, ищу чем похмелиться, ах, если я сейчас умру, то на... я родился
|
22.10.2007, 19:42 | #7 |
добрый няша
Старожил
Регистрация: 29.10.2006
Сообщений: 4,804
|
как ты устанавливаешь фон?
|
23.10.2007, 13:02 | #8 |
Форумчанин
Регистрация: 23.09.2007
Сообщений: 147
|
Свойства экрана - рабочий стол - обзор
Собственно наиболее популярный способ Ладно даю код длл Код:
Не знаю может не юзать VCL, а написать реестр на winapi, может косяков не будет, но мне было впадлу Простите если есть ошибки в коде я не очень шарю
Я надеваю тапочки, ищу чем похмелиться, ах, если я сейчас умру, то на... я родился
Последний раз редактировалось joker; 23.10.2007 в 13:09. |
23.10.2007, 20:32 | #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. |
24.10.2007, 16:12 | #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 |