Condividi tramite


Classe IObjectSafetyImpl

Questa classe fornisce un'implementazione predefinita dell'interfaccia IObjectSafety per consentire a un client di recuperare e impostare i livelli di sicurezza di un oggetto.

Importante

Questa classe e i relativi membri non possono essere usati nelle applicazioni eseguite in Windows Runtime.

Sintassi

template <class T,DWORD dwSupportedSafety>
class IObjectSafetyImpl

Parametri

T
Classe derivata da IObjectSafetyImpl.

dwSupportedSafety
Specifica le opzioni di sicurezza supportate per il controllo. I possibili valori sono i seguenti:

  • INTERFACESAFE_FOR_UNTRUSTED_CALLER L'interfaccia identificata dal parametro riid SetInterfaceSafetyOptions deve essere resa sicura per lo scripting.

  • INTERFACESAFE_FOR_UNTRUSTED_DATA L'interfaccia identificata dal parametro riid deve essere resa sicura per i dati non attendibili durante l'inizializzazioneSetInterfaceSafetyOptions.

Membri

Metodi pubblici

Nome Descrizione
IObjectSafetyImpl::GetInterfaceSafetyOptions Recupera le opzioni di sicurezza supportate dall'oggetto , nonché le opzioni di sicurezza attualmente impostate per l'oggetto .
IObjectSafetyImpl::SetInterfaceSafetyOptions Rende l'oggetto sicuro per l'inizializzazione o lo scripting.

Membri dati pubblici

Nome Descrizione
IObjectSafetyImpl::m_dwCurrentSafety Archivia il livello di sicurezza corrente dell'oggetto.

Osservazioni:

La classe IObjectSafetyImpl fornisce un'implementazione predefinita di IObjectSafety. L'interfaccia IObjectSafety consente a un client di recuperare e impostare i livelli di sicurezza di un oggetto. Ad esempio, un Web browser può chiamare IObjectSafety::SetInterfaceSafetyOptions per rendere un controllo sicuro per l'inizializzazione o la sicurezza per la creazione di script.

Si noti che l'utilizzo della macro IMPLEMENTED_CATEGORY con le categorie di componenti CATID_SafeForScripting e CATID_SafeForInitializing offre un modo alternativo per specificare che un componente è sicuro.

Esercitazione su ATL per articoli correlati, creazione di un progetto ATL

Gerarchia di ereditarietà

IObjectSafety

IObjectSafetyImpl

Requisiti

Intestazione: atlctl.h

IObjectSafetyImpl::GetInterfaceSafetyOptions

Recupera le opzioni di sicurezza supportate dall'oggetto , nonché le opzioni di sicurezza attualmente impostate per l'oggetto .

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

Osservazioni:

L'implementazione restituisce i valori appropriati per qualsiasi interfaccia supportata dall'implementazione dell'oggetto di IUnknown::QueryInterface.

Importante

Qualsiasi oggetto supportato IObjectSafety è responsabile della propria sicurezza e di qualsiasi oggetto delegato. Il programmatore deve tenere conto dei problemi derivanti dall'esecuzione del codice nel contesto dell'utente, dallo scripting tra siti ed eseguire il controllo dell'area appropriato.

Vedere IObjectSafety::GetInterfaceSafetyOptions in Windows SDK.

IObjectSafetyImpl::m_dwCurrentSafety

Archivia il livello di sicurezza corrente dell'oggetto.

DWORD m_dwCurrentSafety;

IObjectSafetyImpl::SetInterfaceSafetyOptions

Rende l'oggetto sicuro per l'inizializzazione o lo scripting impostando il membro m_dwCurrentSafety sul valore appropriato.

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

Osservazioni:

L'implementazione restituisce E_NOINTERFACE per qualsiasi interfaccia non supportata dall'implementazione dell'oggetto di IUnknown::QueryInterface.

Importante

Qualsiasi oggetto supportato IObjectSafety è responsabile della propria sicurezza e di qualsiasi oggetto delegato. Il programmatore deve tenere conto dei problemi derivanti dall'esecuzione del codice nel contesto dell'utente, dallo scripting tra siti ed eseguire il controllo dell'area appropriato.

Vedere IObjectSafety::SetInterfaceSafetyOptions in Windows SDK.

Vedi anche

Interfaccia IObjectSafety
Cenni preliminari sulla classe