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.

dwSupported Cassaforte ty
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 SetInterface Cassaforte tyOptions 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
IObject Cassaforte tyImpl::GetInterface Cassaforte tyOptions Recupera le opzioni di sicurezza supportate dall'oggetto , nonché le opzioni di sicurezza attualmente impostate per l'oggetto .
IObject Cassaforte tyImpl::SetInterface Cassaforte tyOptions Rende l'oggetto sicuro per l'inizializzazione o lo scripting.

Membri dati pubblici

Nome Descrizione
IObject Cassaforte tyImpl::m_dwCurrentCassaforte ty 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'uso della macro IMPLEMENTED_CATEGORY con le categorie di componenti CATID_Cassaforte ForScripting e CATID_Cassaforte ForInitializing offre un modo alternativo per specificare che un componente è sicuro.

Esercitazione su ATL per articolicorrelati, creazione di un progetto ATL

Gerarchia di ereditarietà

IObjectSafety

IObjectSafetyImpl

Requisiti

Intestazione: atlctl.h

IObject Cassaforte tyImpl::GetInterface Cassaforte tyOptions

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 IObject Cassaforte ty::GetInterface Cassaforte tyOptions in Windows SDK.

IObject Cassaforte tyImpl::m_dwCurrentCassaforte ty

Archivia il livello di sicurezza corrente dell'oggetto.

DWORD m_dwCurrentSafety;

IObject Cassaforte tyImpl::SetInterface Cassaforte tyOptions

Rende l'oggetto sicuro per l'inizializzazione o lo scripting impostando il membro m_dwCurrentCassaforte ty 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 IObject Cassaforte ty::SetInterface Cassaforte tyOptions in Windows SDK.

Vedi anche

Interfaccia IObject Cassaforte ty
Cenni preliminari sulla classe