![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Active Desktop [D7, WinXP]
kotbazilio © (2007-08-07 10:51:00)Мне нужно подсунуть пользователю на рабочий стол хтмл страничку, надо я так понимаю для этого прописать в реестре путь, я нашел куда. А вот как включить/показать пользоватлю этот актив десктоп?
Mishell (2007-08-10 15:30:00) [1]да и не забудьте uses ActiveX, ShlObj;
Mishell (2007-08-10 15:28:00) [2]можно так (причем в реестре ничего прописывать не надо):
procedure SetWallpaper(fname:string);
var ActiveDesktop:IActiveDesktop;
wc:PWideChar;
slen:integer;
begin
slen:=Length(fname);
wc:=CoTaskMemAlloc((slen+1)*SizeOf(WideChar));
try
CoCreateInstance(CLSID_ActiveDesktop, nil,
CLSCTX_INPROC_SERVER or CLSCTX_LOCAL_SERVER,
IUnknown, ActiveDesktop);
ActiveDesktop.SetWallpaper(StringToWideChar(fname,wc,slen+1),0);
ActiveDesktop.ApplyChanges(AD_APPLY_ALL or AD_APPLY_FORCE);
except end;
end;