сформировать HRESULT из error code
От: Regulus  
Дата: 06.03.09 15:57
Оценка:
Всем привет.

Собственно, вопрос в заголовке: есть ли какой-нибудь макрос или функция, которая позволяет сформировать корректный HRESULT на базе API error code? Руками делать совсем не хочеться ибо лень

P.S. Искал — пока что не нашел.

Спасибо за помощь!
Re: сформировать HRESULT из error code
От: Conr Россия  
Дата: 06.03.09 16:14
Оценка:
Здравствуйте, Regulus, Вы писали:

R>Всем привет.


R>Собственно, вопрос в заголовке: есть ли какой-нибудь макрос или функция, которая позволяет сформировать корректный HRESULT на базе API error code? Руками делать совсем не хочеться ибо лень



inline HRESULT HR_FROM_WIN32 (DWORD dwErrCode)
{ 
    if(dwErrCode & 0x80000000)
        return dwErrCode;

    return dwErrCode <= 0 ? (HRESULT)dwErrCode : (HRESULT) (((dwErrCode) & 0x0000FFFF) | WIN32 << 16) | 0x80000000);
}
Re[2]: сформировать HRESULT из error code
От: Conr Россия  
Дата: 06.03.09 16:16
Оценка: 3 (1)
Здравствуйте, Conr, Вы писали:

точнее так
C>

C>inline HRESULT HR_FROM_WIN32 (DWORD dwErrCode)
C>{ 
C>    if(dwErrCode & 0x80000000)
C>        return dwErrCode;

C>    return dwErrCode <= 0 ? (HRESULT)dwErrCode : (HRESULT) (((dwErrCode) & 0x0000FFFF) | FACILITY_WIN32 << 16) | 0x80000000);
C>}
C>
Re: сформировать HRESULT из error code
От: Sergey Chadov Россия  
Дата: 07.03.09 08:18
Оценка: +1
Здравствуйте, Regulus, Вы писали:


R>Собственно, вопрос в заголовке: есть ли какой-нибудь макрос или функция, которая позволяет сформировать корректный HRESULT на базе API error code? Руками делать совсем не хочеться ибо лень


R>P.S. Искал — пока что не нашел.


HRESULT_FROM_WIN32
--
Sergey Chadov

... << RSDN@Home 1.2.0 alpha rev. 685>>
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.