Как программно заменить обои на рабочем столе 2
Автор: Владимир Рыбант
Другие подобные советы не изменяют
обои, если в Windows работает режим Active Desktop
Нужно использовать следующее:
uses
ComObj, ShlObj;
procedure ChangeActiveWallpaper;
const
CLSID_ActiveDesktop: TGUID = '{75048700-EF1F-11D0-9888-006097DEACF9}';
var
ActiveDesktop: IActiveDesktop;
begin
ActiveDesktop := CreateComObject(CLSID_ActiveDesktop)
as IActiveDesktop;
ActiveDesktop.SetWallpaper('c:\windows\forest.bmp', 0);
ActiveDesktop.ApplyChanges(AD_APPLY_ALL or AD_APPLY_FORCE);
end;
|
Этим способом можно также изменять обои картинками jpg и gif
|