Содержание материала

 

Code:

var

Reg: TRegIniFile;

begin

Reg := TRegIniFile.Create('Control Panel');

Reg.WriteString('desktop', 'Wallpaper', 'c:\windows\mybmp.bmp');

Reg.WriteString('desktop', 'TileWallpaper', '1');

Reg.Free;

SystemParametersInfo(SPI_SETDESKWALLPAPER, 0, nil, SPIF_SENDWININICHANGE);

end

  

Автор: Владимир Рыбант

 

Другие подобные советы не изменяют обои, если в Windows работает режим Active Desktop

 

Нужно использовать следующее:

Code:

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

 

Добавить комментарий

Не использовать не нормативную лексику.

Просьба писать ваши замечания, наблюдения и все остальное,
что поможет улучшить предоставляемую информацию на этом сайте.

ВСЕ КОММЕНТАРИИ МОДЕРИРУЮТСЯ ВРУЧНУЮ, ТАК ЧТО СПАМИТЬ БЕСПОЛЕЗНО!


Защитный код
Обновить