Класс Platform::Exception
Представляет ошибки, которые происходят во время выполнения приложения. Пользовательские классы исключений не могут быть производными от класса Platform::Exception
. Если требуется пользовательское исключение, можно использовать класс Platform::COMException
и указать относящееся к приложению значение HRESULT.
Синтаксис
public ref class Exception : Object, IException, IPrintable, IEquatable
Участники
Класс Exception
наследуется от класса Object
и интерфейсов IException
, IPrintable
и IEquatable
.
Класс Exception
имеет также следующие типы членов.
Конструкторы
Элемент | Description |
---|---|
Exception::Exception | Инициализирует новый экземпляр класса Exception . |
Методы
Класс наследует Equals()
методы , , GetType()
MemberwiseClose()
GetHashCode()
Finalize()
и ToString()
методы от класса Platform::Object.Exception
Класс Exception
содержит также следующий метод.
Элемент | Description |
---|---|
Exception::CreateException | Создает исключение, представляющее указанное значение HRESULT. |
Свойства
Класс Exception также содержит следующие свойства.
Элемент | Description |
---|---|
Исключение::HResult | Значение HRESULT, соответствующее исключению. |
Exception::Message | Сообщение, описывающее исключение. Это значение доступно только для чтения, его нельзя изменить после создания Exception . |
Требования
Минимальный поддерживаемый клиент: Windows 8
Минимальный поддерживаемый сервер: Windows Server 2012
Пространство имен: Platform
Метаданные: platform.winmd
Метод Exception::CreateException
Создает Platform::Exception^ из указанного значения HRESULT.
Синтаксис
Exception^ CreateException(int32 hr);
Exception^ CreateException(int32 hr, Platform::String^ message);
Параметры
час
Значение HRESULT, которое, как правило, получается из вызова метода COM. Если значение равно 0, равное S_OK, этот метод создает исключение Platform::InvalidArgumentException , так как методы COM, которые успешно не должны вызывать исключения.
message
Строка с описанием ошибки.
Возвращаемое значение
Исключение, представляющее HRESULT ошибки.
Замечания
Используйте этот метод для создания исключения из значения HRESULT, возвращаемого, например, из вызова интерфейса COM. Можно использовать перегруженный метод, принимающий параметр String^, чтобы предоставить пользовательское сообщение.
Настоятельно рекомендуется использовать CreateException для создания строго типизированного исключения, а не создания Platform::COMException , который просто содержит HRESULT.
Конструктор Exception::Exception
Инициализирует новый экземпляр класса Exception.
Синтаксис
Exception(int32 hresult);
Exception(int32 hresult, ::Platform::String^ message);
Параметры
hresult
HRESULT ошибки, представляемый этим исключением.
message
Задаваемое пользователем сообщение (например, текст рекомендаций), связанное с исключением. В общем случае следует выбирать вторую перегрузку, чтобы предоставить максимально подробное описание того, как и почему произошла конкретная ошибка.
Свойство Exception::HResult
Значение HRESULT, соответствующее исключению.
Синтаксис
public:
property int HResult { int get(); }
Значение свойства
Значение HRESULT.
Замечания
Большинство исключений создаются как ошибки модели COM, которые возвращаются в виде значений HRESULT. C++/CX преобразует эти значения в объекты Platform::Exception^, и это свойство сохраняет значение исходного кода ошибки.
Свойство Exception::Message
Сообщение с описанием ошибки.
Синтаксис
public:property String^ Message;
Значение свойства
В исключениях, создаваемых в среде выполнения Windows, это предоставляемое системой описание ошибки.
Замечания
В Windows 8 это свойство доступно только для чтения, так как исключения в этой версии среда выполнения Windows передаются через ABI только как HRESULTS. В Windows 8.1 через интерфейс ABI передается более подробная информация об исключениях, и можно задать пользовательское сообщение, к которому другие компоненты могут обращаться программным образом. Дополнительные сведения см. в разделе "Исключения" (C++/CX).