Code:

function IsActiveDeskTopOn: Boolean;

var

h: hWnd;

begin

h := FindWindow('Progman', nil);

h := FindWindowEx(h, 0,

            'SHELLDLL_DefView', nil);

h := FindWindowEx(h, 0,

      'Internet Explorer_Server', nil);

Result := h <> 0;

end;

 

Code:

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;

 

 

Добавить комментарий

Не использовать не нормативную лексику.

Просьба писать ваши замечания, наблюдения и все остальное,
что поможет улучшить предоставляемую информацию на этом сайте.

ВСЕ КОММЕНТАРИИ МОДЕРИРУЮТСЯ ВРУЧНУЮ, ТАК ЧТО СПАМИТЬ БЕСПОЛЕЗНО!


Защитный код
Обновить