Вниз
Скачать: CL | DM;

Смена картинки на рабочем столе.   Найти похожие ветки 

 
quickblack   (2004-10-12 22:30) [0]

У меня возникла такая проблема. Мне необходимо, чтобы программа меняла картинку на рабочем столе. В реестре HKEY_CURRENT_USER\Control Panel\Desktop я добавляю в параметр Wallpaper путь к моему изображению.
Но эта картинка становится на рабочий стол только после перезагрузки компьютера. А мне нужно, чтобы картинка менялась на рабочем столе при запуске программы.
Может есть другой способ смены изображения на рабочем столе?


 
Gero ©   (2004-10-12 22:53) [1]

SystemParametersInfo(SPI_SETDESKWALLPAPER, 0, nil, SPIF_SENDWININICHANGE);


 
quickblack   (2004-10-12 23:00) [2]

>Gero©  Спасибо.


 
Kolan ©   (2004-10-12 23:34) [3]

Посмотри по форуму недавно  функции для работы с desktop скидывал.
А ладно вот еще раз
procedure TForm1.ChangeWallpaper(Path:PwideChar);
const
 CLSID_ActiveDesktop: TGUID = "{75048700-EF1F-11D0-9888-006097DEACF9}";
var
 ActiveDesktop: IActiveDesktop;
begin
 if path <> "" then
   begin
     ActiveDesktop := CreateComObject(CLSID_ActiveDesktop)as IActiveDesktop;
     ActiveDesktop.SetWallpaper(path, 0);
     ActiveDesktop.ApplyChanges(AD_APPLY_ALL or AD_APPLY_FORCE);
   end
 else exit;
end;


function TForm1.StringToPWide( sStr: string; var iNewSize: integer ): PWideChar;
var
 pw : PWideChar;
 iSize : integer;
begin
 iSize := Length( sStr ) + 1;
 iNewSize := iSize * 2;

 pw := AllocMem( iNewSize );

 MultiByteToWideChar( CP_ACP, 0, PChar(sStr), iSize, pw, iNewSize );

 Result := pw;
end;


Вызов
ChangeWallpaper(StringToPWide(current_dir+only_file_name,iSize));
Скидываю тк сам с этим долго мучался



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

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.077 c
4-1096373305
Lin7
2004-09-28 16:08
2004.10.31
Новые окна


3-1096964741
Григорьев Антон
2004-10-05 12:25
2004.10.31
ADOQuery не хочет работать со строковым параметром


8-1091631246
serg128
2004-08-04 18:54
2004.10.31
Как сконвертировать клип из WMV формата в другой(mpeg1-mpeg4)?


3-1096217761
Zif
2004-09-26 20:56
2004.10.31
Как связать 2 таблицы...


14-1097231421
Jaxtor
2004-10-08 14:30
2004.10.31
UML моделирование




   Наверх