Condividi tramite


Funzione RpcErrorStartEnumeration (rpcasync.h)

La funzione RpcErrorStartEnumeration inizia l'enumerazione delle informazioni sugli errori estese.

Sintassi

RPC_STATUS RpcErrorStartEnumeration(
  RPC_ERROR_ENUM_HANDLE *EnumHandle
);

Parametri

EnumHandle

Puntatore all'handle di enumerazione, sotto forma di struttura RPC_ERROR_ENUM_HANDLE . La struttura deve essere allocata dal chiamante e non può essere liberata fino al completamento dell'operazione. Tutti i membri vengono ignorati nell'input.

Valore restituito

Il completamento riuscito restituisce RPC_S_OK.

Restituisce RPC_S_ENTRY_NOT_FOUND se nel thread non sono presenti informazioni di errore estese. Se è in corso un'enumerazione, l'avvio di una seconda enumerazione inizia dall'inizio.

Nota Per un elenco di codici di errore validi, vedere Valori restituiti RPC.
 

Commenti

La chiamata alla funzione RpcErrorStartEnumeration deve essere eseguita immediatamente dopo la chiamata che ha restituito l'errore. In caso contrario, le informazioni sugli errori estese possono essere sovrascritte dalle chiamate successive. Gli handle di enumerazione devono essere liberati con la funzione RpcErrorEndEnumeration.

Dopo aver chiamato RpcErrorStartEnumeration , è possibile usare l'handle di enumerazione da un thread diverso. La funzione RpcErrorStartEnumeration acquisisce uno snapshot delle informazioni sugli errori estese e l'handle di enumerazione restituito opera sullo snapshot. Tuttavia, le funzioni di enumerazione non vengono sincronizzate tra thread tramite RPC e quindi il chiamante è responsabile di questa operazione. Le chiamate successive a RpcErrorStartEnumeration iniziano una nuova enumerazione e non crea una seconda enumerazione per le stesse informazioni sugli errori estese.

La funzione RpcErrorStartEnumeration potrebbe non riuscire se non è disponibile memoria sufficiente per avviare l'enumerazione. L'handle di enumerazione può essere passato solo alle funzioni RpcError* e non può essere usato con altre funzioni, ad esempio DuplicateHandle.

L'avanzamento del puntatore di enumerazione su un'enumerazione non ha alcun effetto sulle enumerazioni avviate in modo indipendente.

Requisiti

   
Client minimo supportato Windows XP [app desktop | App UWP]
Server minimo supportato Windows Server 2003 [app desktop | App UWP]
Piattaforma di destinazione Windows
Intestazione rpcasync.h (include Rpc.h)
Libreria Rpcrt4.lib
DLL Rpcrt4.dll

Vedi anche

Recupero delle informazioni sugli errori RPC estese

RPC_EE_INFO_PARAM

RPC_ERROR_ENUM_HANDLE

RPC_EXTENDED_ERROR_INFO

RpcErrorAddRecord

RpcErrorClearInformation

RpcErrorEndEnumeration

RpcErrorGetNextRecord

RpcErrorGetNumberOfRecords

RpcErrorLoadErrorInfo

RpcErrorResetEnumeration

RpcErrorSaveErrorInfo