Главная страница
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
14-1109572361
1008
2005-02-28 09:32
2005.03.20
Может статься так, что:


3-1108626722
sapsi
2005-02-17 10:52
2005.03.20
Программно добавить поля в таблицу


1-1110124594
syscoder
2005-03-06 18:56
2005.03.20
Проблемы со StringGrid ом! С многострочностью не клеится...


1-1109827376
leonidus
2005-03-03 08:22
2005.03.20
Глюки MainMenu в XP


14-1109576048
DVM
2005-02-28 10:34
2005.03.20
Помогите потестировать скрипт PHP (разбор HTTP_USER_AGENT)