Класс IObjectSafetyImpl

Этот класс предоставляет реализацию IObjectSafety интерфейса по умолчанию, чтобы разрешить клиенту получать и задавать уровни безопасности объекта.

Важно!

Этот класс и его члены нельзя использовать в приложениях, выполняемых в среде выполнения Windows.

Синтаксис

template <class T,DWORD dwSupportedSafety>
class IObjectSafetyImpl

Параметры

T
Класс, производный от IObjectSafetyImpl.

dwSupported Сейф ty
Задает поддерживаемые параметры безопасности для элемента управления. Может использоваться одно из следующих значений:

  • INTERFACESAFE_FOR_UNTRUSTED_CALLER Интерфейс, определенный параметром riid SetInterface Сейф tyOptions, должен быть безопасным для сценариев.

  • INTERFACESAFE_FOR_UNTRUSTED_DATA интерфейс, определенный параметром SetInterfaceSafetyOptionsriid , должен быть безопасным для ненадежных данных во время инициализации.

Участники

Открытые методы

Имя Описание
IObject Сейф tyImpl::GetInterface Сейф tyOptions Извлекает параметры безопасности, поддерживаемые объектом, а также параметры безопасности, заданные в данный момент для объекта.
IObject Сейф tyImpl::SetInterface Сейф tyOptions Делает объект безопасным для инициализации или скрипта.

Открытые члены данных

Имя Описание
IObject Сейф tyImpl::m_dwCurrentСейф ty Сохраняет текущий уровень безопасности объекта.

Замечания

Класс IObjectSafetyImpl предоставляет реализацию IObjectSafetyпо умолчанию. Интерфейс IObjectSafety позволяет клиенту получать и задавать уровни безопасности объекта. Например, веб-браузер может вызвать IObjectSafety::SetInterfaceSafetyOptions элемент управления, безопасный для инициализации или безопасного для сценариев.

Обратите внимание, что использование макроса IMPLEMENTED_CATEGORY с категориями компонентов CATID_Сейф ForScripting и CATID_Сейф ForInitializing предоставляет альтернативный способ указания того, что компонент является безопасным.

Руководство по созданию проекта ATL в статьяхATL

Иерархия наследования

IObjectSafety

IObjectSafetyImpl

Требования

Header: atlctl.h

IObject Сейф tyImpl::GetInterface Сейф tyOptions

Извлекает параметры безопасности, поддерживаемые объектом, а также параметры безопасности, заданные в данный момент для объекта.

HRESULT GetInterfaceSafetyOptions(
    REFIID riid,
    DWORD* pdwSupportedOptions,
    DWORD* pdwEnabledOptions);

Замечания

Реализация возвращает соответствующие значения для любого интерфейса, поддерживаемого IUnknown::QueryInterfaceреализацией объекта.

Важно!

Любой объект, поддерживающий IObjectSafety собственную безопасность, и любой объект, который он делегирует. Программист должен учитывать проблемы, возникающие при выполнении кода в контексте пользователя, межстраничном скрипте и выполнении подходящей зоны проверка.

См. раздел IObject Сейф ty::GetInterface Сейф tyOptions в пакете SDK для Windows.

IObject Сейф tyImpl::m_dwCurrentСейф ty

Сохраняет текущий уровень безопасности объекта.

DWORD m_dwCurrentSafety;

IObject Сейф tyImpl::SetInterface Сейф tyOptions

Делает объект безопасным для инициализации или скрипта, задав элемент m_dwCurrentСейф ty соответствующим значением.

HRESULT SetInterfaceSafetyOptions(
    REFIID riid,
    DWORD dwOptionsSetMask,
    DWORD dwEnabledOptions);

Замечания

Реализация возвращает E_NOINTERFACE для любого интерфейса, который не поддерживается реализацией IUnknown::QueryInterfaceобъекта.

Важно!

Любой объект, поддерживающий IObjectSafety собственную безопасность, и любой объект, который он делегирует. Программист должен учитывать проблемы, возникающие при выполнении кода в контексте пользователя, межстраничном скрипте и выполнении подходящей зоны проверка.

См. раздел IObject Сейф ty::SetInterface Сейф tyOptions в пакете SDK для Windows.

См. также

Интерфейс IObject Сейф ty
Общие сведения о классе