Форум: "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.03 c
1-80846           kopachev              2002-04-12 20:08  2002.04.25  
Прыгающий курсор


1-80999           kserg@ukr.net         2002-04-11 11:00  2002.04.25  
TStringList-Вопрос по основам


14-81073          D'Aron                2002-03-21 11:15  2002.04.25  
Исходники для склада


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


14-81033          VuDZ                  2002-03-18 15:43  2002.04.25  
нейросети в экономике