Ignore:
Timestamp:
Aug 22, 2012, 4:05:02 PM (10 years ago)
Author:
roman
Message:

Added more identifiers: WIA

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/Utilities/ShowHresult/NotifyIconWindow.h

    r99 r100  
    1616#include <d2derr.h> // FACILITY_D2D
    1717#include <wincodec.h> // FACILITY_WINCODEC_ERR
     18#include <wia_lh.h> // FACILITY_WIA
    1819#include "rowinhttp.h"
    1920#include "AboutDialog.h"
     
    252253                return _T("");
    253254        }
     255        static BOOL IsWiaResult(HRESULT nResult, CString* psMessage = NULL)
     256        {
     257                if(HRESULT_FACILITY(nResult) != FACILITY_WIA)
     258                        return FALSE;
     259                psMessage;
     260                return !LookupWiaIdentifier(nResult).IsEmpty();
     261        }
     262        static CString LookupWiaIdentifier(HRESULT nValue)
     263        {
     264                static const struct { HRESULT nValue; LPCSTR pszName; } g_pMap[] =
     265                {
     266                        #define A(x) { x, #x },
     267                        #include "WiaIdentifier.inc"
     268                        #undef A
     269                };
     270                for(SIZE_T nIndex = 0; nIndex < DIM(g_pMap); nIndex++)
     271                        if(g_pMap[nIndex].nValue == nValue)
     272                                return CString(g_pMap[nIndex].pszName);
     273                return _T("");
     274        }
    254275
    255276public:
     
    359380                        sTitle = _T("WinCodec");
    360381                        sIdentifier = LookupWicIdentifier(nResult);
     382                } else if(IsWiaResult(nResult, &sMessage))
     383                {
     384                        sTitle = _T("WIA");
     385                        sIdentifier = LookupWiaIdentifier(nResult);
    361386                } else
    362387                {
Note: See TracChangeset for help on using the changeset viewer.