Функция RoOriginateError (roerrorapi.h)
Сообщает об ошибке и информативной строке подключенному отладчику.
Синтаксис
BOOL RoOriginateError(
[in] HRESULT error,
[in] HSTRING message
);
Параметры
[in] error
Тип: HRESULT
Код ошибки, связанный с условием ошибки. Если ошибка является кодом успешного выполнения, например S_OK, функция не действует и возвращает значение FALSE. Такое поведение позволяет вызывать функцию, если ошибка не произошла, не вызывая нежелательное сообщение об ошибке.
[in] message
Тип: HSTRING
Информативная строка, помогающая разработчикам исправить состояние ошибки. Максимальная длина составляет 512 символов, включая конечный символ NUL ; Более длинные строки усекаются.
Если строка пуста, функция завершается успешно, но сведения об ошибке не передаются. Рекомендуется всегда указывать информативную строку.
Если аргумент message имеет значение NULL, функция завершается успешно и сообщает универсальную строку в Winerror.h, если она доступна, или универсальную строку, связанную с E_FAIL.
Эта функция не поддерживает внедренные символы NUL , поэтому передаются только символы до первого NUL .
Строка сообщения должна быть локализована.
Возвращаемое значение
Тип: BOOL
Код возврата | Описание |
---|---|
|
Сообщение об ошибке было отправлено успешно. |
|
message имеет значение NULL или указывает на пустую строку, или ошибка является кодом успешного выполнения. |
Комментарии
Используйте функцию RoOriginateError , чтобы сообщить отладчику об ошибке и соответствующем сообщении. Эта функция не выполняет ведение журнала или трассировку событий.
Ошибка передается отладчику путем вызова структурированного исключения. Это исключение перехватывается подключенным отладчиком, а параметры исключения содержат как ошибку, так и строку сообщения . Отладчик может отобразить эти параметры пользователю.
В зависимости от текущей конфигурации отладчика функция RoOriginateError может привести к остановке выполнения в отладчике на месте исключения.
Если флаг UseSetErrorInfo устанавливается путем вызова функции RoSetErrorReportingFlags , а вызывающий поток инициализирован в COM, функция создает соответствующий объект ошибки, поддерживающий IRestrictedErrorInfo , и связывает его с каналом COM путем вызова SetErrorInfo. Если поток не инициализирован в COM, вызов по-прежнему будет выполнен без ошибок, но ошибка не будет связана с каналом COM.
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Windows 8 [классические приложения | Приложения UWP] |
Минимальная версия сервера | Windows Server 2012 [классические приложения | Приложения UWP] |
Целевая платформа | Windows |
Header | roerrorapi.h |
Библиотека | RuntimeObject.lib |