Что означает код HRESULT 1 (S_FALSE)?

 
Также может означать:
КонстантаТипОС
ERROR_INVALID_FUNCTIONОшибка WindowsWindows
STATUS_WAIT_1NTSTATUSWindows
kOSReturnErrorКод возврата ядра macOSmacOS
KERN_INVALID_ADDRESSКод возврата ядра macOSmacOS
ippStsNoOperationСтатус Intel IPPЛюбая
WDSCP_CATEGORYHRESULTWindows
WDSMCSERVER_CATEGORYHRESULTWindows
WDSTPTMGMT_CATEGORYHRESULTWindows
EPERMerrnoЛюбая
APC_INDEX_MISMATCHКод BSODWindows
Предыдущий Следующий
hrNone WDSCP_CATEGORY

S_FALSE

Что означает S_FALSE

S_FALSE (0X00000001) — конкретный смысл задаёт API: это может быть «условие ложно», «данных нет» или иной штатный результат, но не общий failure.

Что проверить

Сначала используйте правила SUCCEEDED(hr), затем отдельно обрабатывайте точное значение S_FALSE, если контракт метода различает его с S_OK.

Не проверяйте HRESULT условием «не равен нулю». Перед чтением output data убедитесь, какие postconditions гарантируются именно при S_FALSE.

Как подтвердить правильную обработку

Правильная обработка подтверждается тестами S_OK, S_FALSE и реального ошибочного HRESULT: каждая ветвь получает свои ожидаемые postconditions.

Технические ссылки: Microsoft: Structure of COM error codes · Microsoft: Common HRESULT values · Microsoft: HRESULT values.


Нужно найти другой код? Найти другой код состояния или ошибки.