Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2005.03.20;
Скачать: CL | DM;

Вниз

Как программно сменить фоновый рисунок рабочего стола?   Найти похожие ветки 

 
rts111 ©   (2005-02-09 22:09) [0]

Я сделал изменения в registry:

procedure TForm1.Button1Click(Sender: TObject);
var
a:TRegistry;
begin
a:=TRegistry.Create;
a.OpenKey("\Control Panel\Desktop",false);
a.WriteString("Wallpaper","c:\myPic.bmp");
a.WriteString("WallpaperStyle","0");
a.Free;
... ??? ...
end;

Что нужно сделать,
что-бы новая картинка появилась на рабочем столе(без перезагрузки)?


 
iskatel ©   (2005-02-10 00:24) [1]

десктоп обновить наверное, а вообще вроде есть сообщение, которое картинку меняет, только я его не помню, поищи


 
rts1111   (2005-02-10 12:27) [2]

???


 
КаПиБаРа ©   (2005-02-10 12:37) [3]

program ChWpp;

uses
 ShlObj, ComObj, ActiveX, Windows;
{$R *.res}

const
 CLSID_ActiveDesktop: TGUID = "{75048700-EF1F-11D0-9888-006097DEACF9}";

var
 path: widestring;
 ActiveDesktop: IActiveDesktop;
 f: textfile;

begin
 path := "E:\desktop\640x480\1024x768\NEW!\wallpaper_12.jpg";
 if path <> "" then
   try
     CoInitializeEx(nil, COINIT_APARTMENTTHREADED);
     ActiveDesktop := CreateComObject(CLSID_ActiveDesktop) as IActiveDesktop;
     ActiveDesktop.SetWallpaper(PWideChar(path), 0);
     ActiveDesktop.ApplyChanges(AD_APPLY_ALL or AD_APPLY_FORCE);
   finally
     CoUninitialize;
   end;

end.



Страницы: 1 вся ветка

Текущий архив: 2005.03.20;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.027 c
1-1109693041
Vasilisk
2005-03-01 19:04
2005.03.20
Быстрый поиск по HTML


1-1110071971
ArchValentin
2005-03-06 04:19
2005.03.20
Запреты на запуск программ


1-1110352028
John
2005-03-09 10:07
2005.03.20
ListBox


4-1107546201
XAN
2005-02-04 22:43
2005.03.20
kak cdelat tak ctobi ikonka proqrammi bila v systray


1-1109753381
Anchar2004
2005-03-02 11:49
2005.03.20
фаилы дириктории.