Форум: "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.72 MB
Время: 0.028 c
3-80781           sir_musatov           2002-04-04 16:06  2002.04.25  
вопрос про CDX


3-80794           vitnt2000             2002-04-03 06:42  2002.04.25  
SQL Запрос


14-81049          Frikl                 2002-03-12 00:42  2002.04.25  
Инет


1-80941           JibSkeart             2002-04-11 16:13  2002.04.25  
Как запустить видео файлы программно


6-81018           AlexRush              2002-02-14 20:21  2002.04.25  
проблемка с NetServerEnum