Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.10.31;
Скачать: 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 вся ветка

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

Наверх




Память: 0.47 MB
Время: 0.044 c
4-1095874114
ASDee
2004-09-22 21:28
2004.10.31
ид по хэндлу?


8-1091686439
Ivolg
2004-08-05 10:13
2004.10.31
No MCI device open


1-1098255088
BillyJeans
2004-10-20 10:51
2004.10.31
Как отловить окончание изменения TrackBar


9-1088492992
ПЛОВ
2004-06-29 11:09
2004.10.31
Работа OGL под ХР


1-1098258070
AlexanderXXX
2004-10-20 11:41
2004.10.31
Frame