скрыть

скрыть

  Форум  

Delphi FAQ - Часто задаваемые вопросы

| Базы данных | Графика и Игры | Интернет и Сети | Компоненты и Классы | Мультимедиа |
| ОС и Железо | Программа и Интерфейс | Рабочий стол | Синтаксис | Технологии | Файловая система |



Google  
 

Как проверить, включён ли ActiveDesktop 2



Оформил: DeeCo

uses
   ComObj, ShlObj, ActiveX;

 // Check if Active Desktop is enabled (2) 
function IsActiveDesktopEnable: Boolean;
 const
   CLSID_ActiveDesktop: TGUID = '{75048700-EF1F-11D0-9888-006097DEACF9}';
 var
   ActiveDesk: IActiveDesktop;
   ComponentsOpt: TComponentsOpt;
   hr: HRESULT;
   dwReserved: DWORD;
 begin
   ZeroMemory(@ComponentsOpt, SizeOf(TComponentsOpt));
   ComponentsOpt.dwSize := SizeOf(TComponentsOpt);
   hr := CoCreateInstance(CLSID_ActiveDesktop, nil, CLSCTX_INPROC_SERVER,
     CLSID_ActiveDesktop, ActiveDesk);
   if SUCCEEDED(hr) then
   begin
     hr := ActiveDesk.GetDesktopItemOptions(ComponentsOpt, dwReserved);
     // ActiveDesk._Release; 
  end;
   Result := ComponentsOpt.fActiveDesktop;
 end;





Copyright © 2004-2016 "Delphi Sources". Delphi World FAQ




Группа ВКонтакте   Ссылка на Twitter   Группа на Facebook