Macro RpcExcept (rpc.h)
A instrução RpcExcept fornece tratamento de exceção estruturado para aplicativos RPC.
Windows Vista e versões posteriores do Windows: RpcExceptionFilter é recomendado para tratamento de exceções estruturadas para as exceções mais comuns como uma alternativa aos filtros personalizados com RpcExcept. No entanto, os filtros de exceção personalizados ainda devem usar RpcExcept.
Sintaxe
void RpcExcept(
expr
);
Parâmetros
expr
Expressão que é avaliada quando ocorre uma exceção. Se a expressão for avaliada como um valor diferente de zero, as instruções de exceção serão executadas. Se a expressão for avaliada como um valor zero, o desenrolamento continuará para a próxima função RpcTryExcept ou RpcTryFinally .
Retornar valor
Nenhum
Comentários
Se uma exceção não ocorrer, as instruções de expressão e exceção serão ignoradas e a execução continuará na instrução após a instrução RpcEndExcept .
A instrução composta após a cláusula RpcTryExcept é o corpo ou a seção protegida. A instrução composta após a cláusula RpcExcept é o manipulador de exceção. O manipulador especifica um conjunto de ações a ser executado se uma exceção for gerada durante a execução do corpo da seção protegida. A execução procede da seguinte maneira:
- A seção protegida é executada.
- Se nenhuma exceção ocorrer durante a execução da seção protegida, a execução continuará na instrução após a cláusula RpcEndExcept .
- Se ocorrer uma exceção durante a execução da seção protegida ou em qualquer rotina que a seção protegida chamar, a expressão __except será avaliada e o valor determinará como a exceção é tratada. Há três valores:
- EXCEPTION_CONTINUE_EXECUTION (–1) Exceção é ignorada. Continue a execução no ponto onde ocorreu a exceção.
- EXCEPTION_CONTINUE_SEARCH (0) Exceção não é reconhecida. Continue a procurar manipuladores na pilha, primeiro os que contêm as instruções try-except, depois os que têm a próxima precedência mais alta.
- A exceção é reconhecida. Transfira o controle para o manipulador de exceção executando a instrução composta __except e, em seguida, continue a execução após o bloco __except.
RpcExceptionCode pode ser usado em instruções de expressão e exceção para determinar qual exceção ocorreu.
As restrições a seguir se aplicam:
- Pular (através de um goto) em instruções protegidas não é permitido.
- Não é permitido saltar (por meio de um goto) em instruções de exceção .
- Não é permitido retornar ou saltar (por meio de um goto) de instruções protegidas .
- Não é permitido retornar ou saltar (por meio de um goto) de instruções de exceção .
Requisitos
Requisito | Valor |
---|---|
Cliente mínimo com suporte | Windows 2000 Professional [somente aplicativos da área de trabalho] |
Servidor mínimo com suporte | Windows 2000 Server [somente aplicativos da área de trabalho] |
Plataforma de Destino | Windows |
Cabeçalho | rpc.h |