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

Вниз

Графика   Найти похожие ветки 

 
Артём   (2003-03-27 08:05) [0]

Как программным способом менять картинку на рабочем столе?
Заранее благодарю!


 
AlexT1000   (2003-03-28 16:32) [1]

uses

Windows,
ComObj,
Registry,
ShlObj,
SysUtils,

var
ActiveDesktop: IActiveDesktop;


procedure SetWallpaper(FileName:String;bTile:boolean);
var reg : TRegIniFile;
WallPaperFile : string;
Temp: array[0..255] of Char;
prevW : string;
PrevT : string;
begin
// Изменяем ключи реестра
// HKEY_CURRENT_USER
// Control Panel\Desktop
// TileWallpaper (REG_SZ)
// Wallpaper (REG_SZ)

reg := TRegIniFile.Create("Control Panel\Desktop" );
GetWindowsDirectory(Temp, 256);
WallPaperFile := StrPas(Temp) + "\" + "Wallpaper.bmp" ;

// эта функция конвртит файл из любого формата в bmp это специфическая функция из одной очень платной библиотеки
главное цель! переконверитить файл в bmp реализуй своими методами
L_FileConvert(PChar(FileName), PChar(WallPaperFile),
FILE_BMP, 0, 0, 24, 0, nil, nil, nil);

reg.WriteString("", "Wallpaper", WallPaperFile );
reg.WriteString("", "TileWallpaper", IntToStr(integer(bTile)));
reg.Free;
// Оповещаем всех о том, что мы изменили системные настройки
try
ActiveDesktop := CreateComObject(CLSID_ActiveDesktop) as IActiveDesktop;
ActiveDesktop.ApplyChanges(AD_APPLY_ALL or AD_APPLY_FORCE);
except
ActiveDesktop := nil;
CursorWaitStop();
end;//try

end;



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

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

Наверх




Память: 0.46 MB
Время: 0.019 c
1-55565
SergP
2003-07-05 23:52
2003.07.17
Какие есть в Delphi функции для работы с regular expression?


3-55473
softmaster
2003-06-22 20:15
2003.07.17
Вопрос по генерации автоинкрементных полей


3-55445
Chestniy
2003-06-24 15:38
2003.07.17
Как обрубить sql запрос, который работает в отдельном потоке?


3-55409
Relaxxx
2003-06-23 16:29
2003.07.17
MultiSelect в DBGrid


3-55398
Andrey007
2003-06-23 13:32
2003.07.17
Как редактировать текст в DBMemo?