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

Вниз

Обои в винде   Найти похожие ветки 

 
NightLord ©   (2005-08-11 18:24) [0]

Всем привет. Эт опять я. Немогу понять в чем проблема. Ставлю обои на рабочий стол так:
var str:TFileName;

SystemParametersInfo(SPI_SETDESKWALLPAPER,0,PChar(str),SPIF_updateinifile);
SendMessage(FindWindow("Progman","Program Manager"),WM_COMMAND,$A065,0);

Все прекрасно! Обои ставятся, но после использования игр (практически всех), обои исчезают! неподскажите что еще надо сделать?


 
Eraser ©   (2005-08-11 18:34) [1]

NightLord ©   (11.08.05 18:24)

Попробуй ещё в реестре прописать в ключ HKEY_CURRENT_USER\Control Panel\Desktop параметр Wallpaper путь к файлу.


 
NightLord ©   (2005-08-11 19:38) [2]

Я конечно в реестрах не силен поэтому я незнаю или метод не помог или я что-то не так сделал:
procedure TForm1.Button1Click(Sender: TObject);
var
 Registry: TRegistry;
begin
 Registry := TRegistry.Create;
 Registry.RootKey := HKEY_CURRENT_USER;
 Registry.OpenKey("Control Panel\Desktop",true);
 Registry.WriteString("Wallpaper","E:\Progi\Îêîííûé ìåíåäæåð\image");
 Registry.CloseKey;
 Registry.Free;
end;


 
NightLord ©   (2005-08-11 19:49) [3]

Всем спасибо за участие, я уже нашел. Кому интерестно вот код:

program wallpapr;
uses Registry, WinProcs;
procedure SetWallpaper(sWallpaperBMPPath : String; bTile : boolean );
var
 reg : TRegIniFile;
begin
// Изменяем ключи реестра
// HKEY_CURRENT_USER
//  Control Panel\Desktop
//    TileWallpaper (REG_SZ)
//    Wallpaper (REG_SZ)
 reg := TRegIniFile.Create("Control Panel\Desktop" );
 with reg do begin
   WriteString( "", "Wallpaper",  
     sWallpaperBMPPath );
   if( bTile )then
   begin
     WriteString("", "TileWallpaper", "1" );
   end else begin
     WriteString("", "TileWallpaper", "0" );
   end;
 end;
 reg.Free;
// Оповещаем всех о том, что мы
// изменили системные настройки
SystemParametersInfo(SPI_SETDESKWALLPAPER, 0, Nil, SPIF_SENDWININICHANGE );
end;
begin
// пример установки WallPaper по центру рабочего стола
SetWallpaper("c:\winnt\winnt.bmp", False );
end.



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

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

Наверх




Память: 0.47 MB
Время: 0.046 c
6-1118900084
lightix
2005-06-16 09:34
2005.10.09
Отправка e-mail с помощью INDY:как получить MSGID письма?


2-1125054811
Теплый снег
2005-08-26 15:13
2005.10.09
Работа со строками


14-1127051675
Piter
2005-09-18 17:54
2005.10.09
Сам себе ДиДжей :)


4-1123652186
pepper
2005-08-10 09:36
2005.10.09
Отключение сетевыеx дисков


14-1127310647
Суслик
2005-09-21 17:50
2005.10.09
Кто в Москве продаст следующие книги?