Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
Essa classe fornece uma implementação padrão da interface IObjectSafety para permitir que um cliente recupere e defina os níveis de segurança de um objeto.
Importante
Essa classe e os respectivos membros não podem ser usados em aplicativos executados no Windows Runtime.
Sintaxe
template <class T,DWORD dwSupportedSafety>
class IObjectSafetyImpl
Parâmetros
T
Sua classe, derivada de IObjectSafetyImpl.
dwSupportedSafety
Especifica as opções de segurança com suporte para o controle. Pode ser um dos seguintes valores:
INTERFACESAFE_FOR_UNTRUSTED_CALLER A interface identificada pelo parâmetro SetInterfaceSafetyOptions
riiddeverá ser segura para scripts.INTERFACESAFE_FOR_UNTRUSTED_DATA A interface identificada pelo parâmetro
SetInterfaceSafetyOptionsriiddeverá ser segura para dados não confiáveis durante a inicialização.
Membros
Métodos públicos
| Nome | Descrição |
|---|---|
| IObjectSafetyImpl::GetInterfaceSafetyOptions | Recupera as opções de segurança com suporte para objeto, bem como as opções de segurança atualmente definidas para o objeto. |
| IObjectSafetyImpl::SetInterfaceSafetyOptions | Torna o objeto seguro para inicialização ou script. |
Membros de Dados Públicos
| Nome | Descrição |
|---|---|
| IObjectSafetyImpl::m_dwCurrentSafety | Armazena o nível de segurança atual do objeto. |
Comentários
A classe IObjectSafetyImpl fornece uma implementação padrão de IObjectSafety. A interface IObjectSafety permite que um cliente recupere e defina os níveis de segurança de um objeto. Por exemplo, um navegador da Web poderá chamar IObjectSafety::SetInterfaceSafetyOptions para tornar um controle seguro para inicialização ou seguro para script.
Observe que o uso da macro IMPLEMENTED_CATEGORY com as categorias de componente CATID_SafeForScripting e CATID_SafeForInitializing fornece uma maneira alternativa de especificar que um componente é seguro.
Artigos relacionados Tutorial da ATL, criando um projeto da ATL
Hierarquia de herança
IObjectSafety
IObjectSafetyImpl
Requisitos
Cabeçalho: atlctl.h
IObjectSafetyImpl::GetInterfaceSafetyOptions
Recupera as opções de segurança com suporte para objeto, bem como as opções de segurança atualmente definidas para o objeto.
HRESULT GetInterfaceSafetyOptions(
REFIID riid,
DWORD* pdwSupportedOptions,
DWORD* pdwEnabledOptions);
Comentários
A implementação retorna os valores apropriados para qualquer interface com suporte pela implementação do objeto de IUnknown::QueryInterface.
Importante
Todos os objetos com suporte para IObjectSafety são responsáveis pela sua própria segurança e de todos os respectivos objetos delegados. O programador deverá levar em conta os problemas decorrentes da execução de código no contexto do usuário, scripts entre sites e realizar uma verificação de zona adequada.
Consulte IObjectSafety::GetInterfaceSafetyOptionsno SDK do Windows.
IObjectSafetyImpl::m_dwCurrentSafety
Armazena o nível de segurança atual do objeto.
DWORD m_dwCurrentSafety;
IObjectSafetyImpl::SetInterfaceSafetyOptions
Torna o objeto seguro para inicialização ou script definindo o membro m_dwCurrentSafety para o valor apropriado.
HRESULT SetInterfaceSafetyOptions(
REFIID riid,
DWORD dwOptionsSetMask,
DWORD dwEnabledOptions);
Comentários
A implementação retorna E_NOINTERFACE para qualquer interface sem suporte pela implementação do objeto de IUnknown::QueryInterface.
Importante
Todos os objetos com suporte para IObjectSafety são responsáveis pela sua própria segurança e de todos os respectivos objetos delegados. O programador deverá levar em conta os problemas decorrentes da execução de código no contexto do usuário, scripts entre sites e realizar uma verificação de zona adequada.
Consulte IObjectSafety::SetInterfaceSafetyOptions no SDK do Windows.