Форум: "WinAPI";
Поиск по всему сайту: delphimaster.net;
Текущий архив: 2002.04.25;
Скачать: [xml.tar.bz2];




Вниз

Как используя API выключить ActiveDesktop 


SerVS - S   (2002-01-29 14:13) [0]

Как используя API програмно выключить ActiveDesktop. Когда он включен неполучается менять картинку на рабочем столе.
Может кто знает как заставить Винду обновить рабочий стол в ActiveDesktop, тогда первый вопрос снимается



Raptor   (2002-01-29 21:59) [1]

Обновить ActiveDesktop легко. Используешь интерфейс IActiveDesktop. Вот тпример который изменяет волпапер на ActiveDesktop и после этого обновляет его.

procedure WallpaperChanger(path:String);
var
ActiveDesktop: IActiveDesktop;
ss:WideString;
begin
ss:=WideString(path);
ActiveDesktop := CreateComObject(CLSID_ActiveDesktop) as IActiveDesktop;
ActiveDesktop.SetWallpaper(PWideChar(ss), 0);
ActiveDesktop.ApplyChanges(AD_APPLY_ALL or AD_APPLY_FORCE);
end;

Только не забудь включить модули ShlObj и ComObj в Uses.
А как включить или выключить я не знаю. В описании IActiveDesktop я не нашел способа сделать это.



Mover   (2002-02-20 12:16) [2]

А я знаю! ;-P
Технологию смотрите в моей программе Wallpaper (v0.6) в Кладовке.




Форум: "WinAPI";
Поиск по всему сайту: delphimaster.net;
Текущий архив: 2002.04.25;
Скачать: [xml.tar.bz2];




Наверх





Память: 0.71 MB
Время: 0.031 c
3-80763           Rustik                2002-04-03 16:20  2002.04.25  
Вставка данных из таблицы справочника в другие


14-81082          Prog_SKV1             2002-03-19 07:08  2002.04.25  
InterBase 6.5


3-80801           SkyR                  2002-04-05 02:50  2002.04.25  
Ошибка - InterBase


14-81071          Алексей Петров        2002-03-18 16:54  2002.04.25  
Периодически пролетает


3-80833           Alik Chu              2002-04-05 17:14  2002.04.25  
Народ! Помогите найти нормальный DbTreeView