Главная страница
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.034 c
6-1092818854
Klopan
2004-08-18 12:47
2004.10.31
TServerSocket


14-1097230425
TUser
2004-10-08 14:13
2004.10.31
Пятница?


14-1097469635
Layner
2004-10-11 08:40
2004.10.31
SP2 на XP, последствия...


14-1097182554
Lancelot
2004-10-08 00:55
2004.10.31
Audi-80 B4


3-1096532944
Koala
2004-09-30 12:29
2004.10.31
вопрос по RxDBLookUpCombo