Condividi tramite


Metodo ICLRPolicyManager::SetDefaultAction

Specifica l'azione dei criteri che Common Language Runtime (CLR) deve eseguire quando si verifica l'operazione specificata.

Sintassi

HRESULT SetDefaultAction (  
    [in] EClrOperation operation,  
    [in] EPolicyAction action  
);  

Parametri

operation
[in] Uno dei valori EClrOperation , che indica l'azione per cui personalizzare il comportamento CLR.

action
[in] Uno dei valori EPolicyAction , che indica l'azione dei criteri che CLR deve eseguire quando operation si verifica.

Valore restituito

HRESULT Descrizione
S_OK SetDefaultAction restituito correttamente.
HOST_E_CLRNOTAVAILABLE CLR non è stato caricato in un processo oppure CLR si trova in uno stato in cui non può eseguire codice gestito o elaborare correttamente la chiamata.
HOST_E_TIMEOUT Timeout della chiamata.
HOST_E_NOT_OWNER Il chiamante non possiede il blocco.
HOST_E_ABANDONED Un evento è stato annullato durante l'attesa di un thread o di una fibra bloccata.
E_FAIL Si è verificato un errore irreversibile sconosciuto. Dopo che un metodo restituisce E_FAIL, CLR non è più utilizzabile all'interno del processo. Le chiamate successive ai metodi di hosting restituiscono HOST_E_CLRNOTAVAILABLE.
E_INVALIDARG È stato specificato un valore non valido action per o operationè stato fornito un valore non valido per operation.

Commenti

Non tutti i valori delle azioni dei criteri possono essere specificati come comportamento predefinito per le operazioni CLR. SetDefaultAction in genere può essere usato solo per eseguire l'escalation del comportamento. Ad esempio, un host può specificare che l'interruzione del thread viene trasformata in interruzioni di thread scortesi, ma non può specificare l'opposto. La tabella seguente descrive i valori validi action per ogni valore possibile operation .

Valore per operation Valori validi per action
OPR_ThreadAbort - eAbortThread
- eRudeAbortThread
- eUnloadAppDomain
- eRudeUnloadAppDomain
- eExitProcess
- eFastExitProcess
- eRudeExitProcess
- eDisableRuntime
OPR_ThreadRudeAbortInNonCriticalRegion

OPR_ThreadRudeAbortInCriticalRegion
- eRudeAbortThread
- eUnloadAppDomain
- eRudeUnloadAppDomain
- eExitProcess
- eFastExitProcess
- eRudeExitProcess
- eDisableRuntime
OPR_AppDomainUnload - eUnloadAppDomain
- eRudeUnloadAppDomain
- eExitProcess
- eFastExitProcess
- eRudeExitProcess
- eDisableRuntime
OPR_AppDomainRudeUnload - eRudeUnloadAppDomain
- eExitProcess
- eFastExitProcess
- eRudeExitProcess
- eDisableRuntime
OPR_ProcessExit - eExitProcess
- eFastExitProcess
- eRudeExitProcess
- eDisableRuntime
OPR_FinalizerRun - eNoAction
- eAbortThread
- eRudeAbortThread
- eUnloadAppDomain
- eRudeUnloadAppDomain
- eExitProcess
- eFastExitProcess
- eRudeExitProcess
- eDisableRuntime

Requisiti

Piattaforme: vedere Requisiti di sistema di .NET Framework.

Intestazione: MSCorEE.h

Libreria: Incluso come risorsa in MSCorEE.dll

Versioni di .NET Framework: Disponibile dalla versione 2.0

Vedi anche