![]() |
|
|
|||||||
| Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
|
Опции темы | Поиск в этой теме | Опции просмотра |
|
|
|
#1
|
|||
|
|||
|
Подскажите, как можно с помощью Делфи проверить значение реестра и при необходимости изменить это значение. Например задавать путь к рисунку рабочего стола.
|
|
#2
|
|||
|
|||
|
см класс TRegistry.
А вообще вот код из моего проекта: Код:
procedure TMainForm.SetWallpaper(AWallpaperStyle : TWallpaperStyle);
var
OldWallpaperFile : String;
OldWallpaperStyle : String;
OldTileWallpaper : String;
WallpaperFile : String;
Bmp : TBitmap;
Reg : TRegistry;
begin
OldWallpaperFile := '';
WallpaperFile := GetWindowsFolerPath + 'ADPV Wallpaper.bmp';
Bmp := TBitMap.Create;
Try
MakeWallpaperBitmapFromImage(Bmp, AWallpaperStyle);
Bmp.SaveToFile(WallpaperFile);
Finally
Bmp.Free;
End;
Reg := TRegistry.Create;
If Reg.OpenKey( '\Control Panel\Desktop', True) Then
Begin
// Save old values
If Reg.ValueExists('Wallpaper') Then OldWallpaperFile := Reg.ReadString('Wallpaper');
If (OldWallpaperFile <> '') And (OldWallpaperFile <> WallpaperFile) Then
Begin
If Reg.ValueExists('WallpaperStyle') Then OldWallpaperStyle := Reg.ReadString('WallpaperStyle') Else OldWallpaperStyle := '2';
If Reg.ValueExists('TileWallpaper') Then OldTileWallpaper := Reg.ReadString('TileWallpaper') Else OldTileWallpaper := '0';
Reg.WriteString('OldWallpaper',OldWallpaperFile);
Reg.WriteString('OldTileWallpaper',OldTileWallpaper);
Reg.WriteString('OldWallpaperStyle',OldWallpaperStyle);
End;
// Write new values
If AWallpaperStyle = wpsTile
Then Reg.WriteString( 'TileWallpaper', '1' )
Else Reg.WriteString( 'TileWallpaper', '0' );
If AWallpaperStyle = wpsStretch
Then Reg.WriteString('WallpaperStyle', '2')
Else Reg.WriteString('WallpaperStyle', '0');
Reg.CloseKey;
End;
Reg.Free;
SystemParametersInfo(SPI_SetDeskWallpaper, 0, PChar(WallpaperFile),SPIF_UPDATEINIFILE Or SPIF_SENDWININICHANGE);
end; |
|
#3
|
||||
|
||||
|
Для справки, уменя есть гибридный вариант и он значительно лучше вышепривиденного, так как можно применять различные форматы изображений без надобности конвертирования, возможно применение HTML, кода меньше и после применения обновляется рабочий стол. Это только пример, как сделать подобное Вы, наверно, уже догадались.
|