IObjectSafetyImpl 클래스
이 클래스는 클라이언트가 개체의 IObjectSafety
안전 수준을 검색하고 설정할 수 있도록 인터페이스의 기본 구현을 제공합니다.
Important
이 클래스와 해당 멤버는 Windows 런타임에서 실행되는 애플리케이션에서 사용할 수 없습니다.
구문
template <class T,DWORD dwSupportedSafety>
class IObjectSafetyImpl
매개 변수
T
에서 파생된 IObjectSafetyImpl
클래스입니다.
dwSupportedSafety
컨트롤에 대해 지원되는 안전 옵션을 지정합니다. 다음 값 중 하나일 수 있습니다.
INTERFACESAFE_FOR_UNTRUSTED_CALLER SetInterfaceSafetyOptions 매개 변수
riid
로 식별된 인터페이스는 스크립팅에 안전해야 합니다.INTERFACESAFE_FOR_UNTRUSTED_DATA 초기화하는 동안 신뢰할 수 없는 데이터에 대해 매개 변수
riid
로 식별SetInterfaceSafetyOptions
된 인터페이스를 안전하게 만들어야 합니다.
멤버
공용 메서드
이름 | 설명 |
---|---|
IObjectSafetyImpl::GetInterfaceSafetyOptions | 개체에서 지원하는 안전 옵션과 개체에 대해 현재 설정된 안전 옵션을 검색합니다. |
IObjectSafetyImpl::SetInterfaceSafetyOptions | 개체를 초기화 또는 스크립팅에 안전하게 만듭니다. |
공용 데이터 멤버
속성 | 설명 |
---|---|
IObjectSafetyImpl::m_dwCurrentSafety | 개체의 현재 안전 수준을 저장합니다. |
설명
클래스 IObjectSafetyImpl
는 .의 기본 구현을 IObjectSafety
제공합니다. 인터페이스 IObjectSafety
를 사용하면 클라이언트가 개체의 안전 수준을 검색하고 설정할 수 있습니다. 예를 들어 웹 브라우저는 컨트롤을 초기화에 안전하게 만들거나 스크립팅에 안전하도록 호출 IObjectSafety::SetInterfaceSafetyOptions
할 수 있습니다.
CATID_SafeForScripting 및 CATID_SafeForInitializing 구성 요소 범주와 함께 IMPLEMENTED_CATEGORY 매크로를 사용하면 구성 요소가 안전한지 지정하는 다른 방법을 사용할 수 있습니다.
관련 문서 ATL 자습서, ATL 프로젝트 만들기
상속 계층 구조
IObjectSafety
IObjectSafetyImpl
요구 사항
헤더: atlctl.h
IObjectSafetyImpl::GetInterfaceSafetyOptions
개체에서 지원하는 안전 옵션과 개체에 대해 현재 설정된 안전 옵션을 검색합니다.
HRESULT GetInterfaceSafetyOptions(
REFIID riid,
DWORD* pdwSupportedOptions,
DWORD* pdwEnabledOptions);
설명
구현은 개체의 구현에서 지원하는 모든 인터페이스에 대한 적절한 값을 반환합니다 IUnknown::QueryInterface
.
Important
지원하는 IObjectSafety
모든 개체는 자체 보안 및 위임하는 모든 개체의 보안을 담당합니다. 프로그래머가 사용자의 컨텍스트, 사이트 간 스크립팅에서 코드를 실행하여 발생하는 문제를 고려하고 적절한 영역 검사를 수행해야 합니다.
Windows SDK에서 IObjectSafety::GetInterfaceSafetyOptions를 참조하세요.
IObjectSafetyImpl::m_dwCurrentSafety
개체의 현재 안전 수준을 저장합니다.
DWORD m_dwCurrentSafety;
IObjectSafetyImpl::SetInterfaceSafetyOptions
m_dwCurrentSafety 멤버를 적절한 값으로 설정하여 개체를 초기화 또는 스크립팅에 안전하게 만듭니다.
HRESULT SetInterfaceSafetyOptions(
REFIID riid,
DWORD dwOptionsSetMask,
DWORD dwEnabledOptions);
설명
구현은 개체의 구현 IUnknown::QueryInterface
에서 지원되지 않는 인터페이스에 대한 E_NOINTERFACE 반환합니다.
Important
지원하는 IObjectSafety
모든 개체는 자체 보안 및 위임하는 모든 개체의 보안을 담당합니다. 프로그래머가 사용자의 컨텍스트, 사이트 간 스크립팅에서 코드를 실행하여 발생하는 문제를 고려하고 적절한 영역 검사를 수행해야 합니다.
Windows SDK에서 IObjectSafety::SetInterfaceSafetyOptions를 참조하세요.