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

Вниз

Фон рабочего стола - динамическое изменение   Найти похожие ветки 

 
Vcoder ©   (2005-08-22 22:47) [0]

Здравствуйте, Мастера!

Есть такая задумка - сформировать изображение в памяти (например в TBitmap), а затем сделать его рисунком рабочего стола, не сохраняя в файл. Понятно, что это до первой перезагрузки - больше и не надо. Вопрос в том, как вообще это реализовать.

Пробовал код:

procedure DrawOnDesktop;
var
 h : THandle;
 DC : HDC;
begin
 h := FindWindow("ProgMan", "Program Manager");
 h := GetWindow(h, GW_CHILD);
 DC:=GetDC(h);
 if DC=0 then exit;
 try
   ...
   // Рисуем на DC, используя API функции,
   // например SetPixel
   ...
 finally
   ReleaseDC(h, DC);
 end;// try
end;// procedure DrawOnDesktop


Работает через раз, но рисует на поверхности рабочего стола, причем закрашивает даже иконки. Но полученный рисунок стирается любым окном - проявляется предыдущий фон.

Кстати, если взять

GetDC(0);

то закрашивается ВЕСЬ ЭКРАН. Правда, с тем же результатом...

Итак, возможно ли сделать как я хочу - поменять рисунок фона на сеанс, не сохраняя его на диск? И если да, то как?


 
Eraser ©   (2005-08-22 22:58) [1]

Vcoder ©   (22.08.05 22:47)

На диск сохранять всё таки прийдётся... а в чём проблема то? Сохраняй во временные файлы к примеру, а потом удаляй.

Или "вирус" пишем? )


 
Vcoder ©   (2005-08-22 23:04) [2]

Не, не вирус. Вирус - он размножается.

Помнится, была как-то програмка, делающая фон рабочего стола анимированным. Вроде даже видео можно было туда воспроизводить. Вот играясь с примером плазмы и подумал - а здорово бы сделать чтобы этот рисунок выводился на рабочий стол и менялся периодически.


 
Zeqfreed ©   (2005-08-22 23:53) [3]

Vcoder ©   (22.08.05 22:47)
Материал к размышлению:
http://www.delphimaster.ru/articles/directx/index.html

Думаю, ещё как вариант можно рассмотреть ActiveX-элемент на рабочем столе.


 
XProger ©   (2005-08-23 07:59) [4]

gif ставь ;)



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

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

Наверх




Память: 0.48 MB
Время: 0.03 c
15-1137508509
JLes
2006-01-17 17:35
2006.02.05
Delphi 2005 и Help (HxS/HxI-файлы)


15-1136949124
НТВ
2006-01-11 06:12
2006.02.05
Default on American


2-1137664260
aleks_tav
2006-01-19 12:51
2006.02.05
Delphi7 и win2000


15-1137202446
НТВ
2006-01-14 04:34
2006.02.05
Откровения коменданта Ирака


2-1137446511
ReBlock
2006-01-17 00:21
2006.02.05
Печать из файла