Partilhar via


Plataforma::Classe de exceção

Representa erros que ocorrem durante a execução do aplicativo. As classes de exceção personalizadas não podem ser derivadas de Platform::Exception. Se você precisar de uma exceção personalizada, poderá usar Platform::COMException e especificar um HRESULT específico do aplicativo.

Sintaxe

public ref class Exception : Object, IException, IPrintable, IEquatable

Membros

A classe Exception herda da classe Object e das interfaces IException, IPrintablee IEquatable.

A classe Exception também tem os seguintes tipos de membros.

Construtores

Membro Descrição
Exceção::Exceção Inicializa uma nova instância da classe Exception.

Metodologia

A classe Exception herda os métodos Equals(), Finalize(), GetHashCode(), GetType(), MemberwiseClose()e ToString() da classe Platform::Object. A classe Exception também tem o seguinte método.

Membro Descrição
Exceção::CreateException Cria uma exceção que representa o valor HRESULT especificado.

Propriedades

A classe Exception também tem as seguintes propriedades.

Membro Descrição
Exceção::HResult O HRESULT que corresponde à exceção.
Exceção::Mensagem Uma mensagem que descreve a exceção. Esse valor é somente leitura e não pode ser modificado depois que o Exception é construído.

Requerimentos

Cliente mínimo suportado: Windows 8

Servidor mínimo suportado: Windows Server 2012

Namespace: Plataforma

Metadados: platform.winmd

Método Exception::CreateException

Cria uma Plataforma::Exception^ a partir de um valor HRESULT especificado.

Sintaxe

Exception^ CreateException(int32 hr);
Exception^ CreateException(int32 hr, Platform::String^ message);

Parâmetros

horas
Um valor HRESULT que você normalmente obtém de uma chamada para um método COM. Se o valor for 0, que é igual a S_OK, esse método lança Platform::InvalidArgumentException porque os métodos COM que são bem-sucedidos não devem lançar exceções.

mensagem
Uma cadeia de caracteres que descreve o erro.

Valor de retorno

Uma exceção que representa o erro HRESULT.

Comentários

Use esse método para criar uma exceção de um HRESULT que é retornado, por exemplo, de uma chamada para um método de interface COM. Você pode usar a sobrecarga que usa um parâmetro String^ para fornecer uma mensagem personalizada.

É altamente recomendável usar CreateException para criar uma exceção fortemente tipada em vez de criar um Platform::COMException que contenha apenas o HRESULT.

Exception::Exception Construtor

Inicializa uma nova instância da classe Exception.

Sintaxe

Exception(int32 hresult);
Exception(int32 hresult, ::Platform::String^ message);

Parâmetros

hresult
O erro HRESULT que é representado pela exceção.

mensagem
Uma mensagem especificada pelo usuário, como texto prescritivo, associada à exceção. Em geral, você deve preferir a segunda sobrecarga para fornecer uma mensagem descritiva que seja o mais específica possível sobre como e por que o erro ocorreu.

Exceção::Propriedade HResult

O HRESULT que corresponde à exceção.

Sintaxe

public:
    property int HResult { int get(); }

Valor da propriedade

Um valor HRESULT.

Comentários

A maioria das exceções começa como erros COM, que são retornados como valores HRESULT. C++/CX converte esses valores em objetos Platform::Exception^ e essa propriedade armazena o valor do código de erro original.

Exceção::Propriedade Message

Mensagem que descreve o erro.

Sintaxe

public:
    property String^ Message;

Valor da propriedade

Em exceções originadas no Tempo de Execução do Windows, esta é uma descrição do erro fornecida pelo sistema.

Comentários

No Windows 8, essa propriedade é somente leitura porque as exceções nessa versão do Tempo de Execução do Windows são transportadas pela ABI somente como HRESULTS. No Windows 8.1, informações de exceção mais avançadas são transportadas pela ABI e você pode fornecer uma mensagem personalizada que outros componentes podem acessar programaticamente. Para obter mais informações, consulte Exceptions (C++/CX).

Ver também

de namespace da plataforma