Re[2]: SUCCEEDED и S_FAILED
От: Нахлобуч Великобритания https://hglabhq.com
Дата: 18.06.04 12:08
Оценка:
Здравствуйте, Кодт, Вы писали:

К>Здравствуйте, Burz, Вы писали:


B>>есть переменная типа HRESULT у которой значение = S_FAILED

B>>и идет проверка: if( SUCCEEDED(hr) )
B>>Так выполнение продолжается внутри этого ифа. Это глюк?

К>Что это за константа S_FAILED ?


К>Есть S_FALSE, что означает "успешно, но результат отрицательный" (сравни с S_OK).

К>Есть E_FAIL, что означает "ошибка, что-то не получилось".
К>И ещё дофига разных успешных и ошибочных значений. Ошибочных, как правило, больше.

К>Конвенция наименования кодов говорит, что S_xxx и yyy_S_xxx — это коды успеха, а E_xxx и yyy_E_xxx — коды ошибок.


К>Макросы SUCCEEDED() / FAILED() проверяют, является ли результат "успешным" или "провальным".

К>Этому соответствует 0 или 1 (соответственно) в 31-м бите — флаг SEVERITY.

Или то, что HRESULT соответственно больше/меньше 0 когда приводишь к long, но сие тривиально
HgLab: Mercurial Server and Repository Management for Windows
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.