zig

fork of https://codeberg.org/ziglang/zig
Log | Files | Refs | README | LICENSE

oleacc.h (47239B) - Raw


      1 /*** Autogenerated by WIDL 10.4 from include/oleacc.idl - Do not edit ***/
      2 
      3 #ifdef _WIN32
      4 #ifndef __REQUIRED_RPCNDR_H_VERSION__
      5 #define __REQUIRED_RPCNDR_H_VERSION__ 475
      6 #endif
      7 #include <rpc.h>
      8 #include <rpcndr.h>
      9 #endif
     10 
     11 #ifndef COM_NO_WINDOWS_H
     12 #include <windows.h>
     13 #include <ole2.h>
     14 #endif
     15 
     16 #ifndef __oleacc_h__
     17 #define __oleacc_h__
     18 
     19 /* Forward declarations */
     20 
     21 #ifndef __IAccessible_FWD_DEFINED__
     22 #define __IAccessible_FWD_DEFINED__
     23 typedef interface IAccessible IAccessible;
     24 #ifdef __cplusplus
     25 interface IAccessible;
     26 #endif /* __cplusplus */
     27 #endif
     28 
     29 /* Headers for imported files */
     30 
     31 #include <oaidl.h>
     32 
     33 #ifdef __cplusplus
     34 extern "C" {
     35 #endif
     36 
     37 #include <_mingw_unicode.h>
     38 #ifndef __IAccessibleHandler_FWD_DEFINED__
     39 #define __IAccessibleHandler_FWD_DEFINED__
     40 typedef struct IAccessibleHandler IAccessibleHandler;
     41 #endif
     42 
     43 #ifndef __IAccIdentity_FWD_DEFINED__
     44 #define __IAccIdentity_FWD_DEFINED__
     45 typedef struct IAccIdentity IAccIdentity;
     46 #endif
     47 
     48 #ifndef __IAccPropServer_FWD_DEFINED__
     49 #define __IAccPropServer_FWD_DEFINED__
     50 typedef struct IAccPropServer IAccPropServer;
     51 #endif
     52 
     53 #ifndef __IAccPropServices_FWD_DEFINED__
     54 #define __IAccPropServices_FWD_DEFINED__
     55 typedef struct IAccPropServices IAccPropServices;
     56 #endif
     57 
     58 #ifndef __IAccessible_FWD_DEFINED__
     59 #define __IAccessible_FWD_DEFINED__
     60 typedef struct IAccessible IAccessible;
     61 #endif
     62 
     63 #ifndef __IAccessibleHandler_FWD_DEFINED__
     64 #define __IAccessibleHandler_FWD_DEFINED__
     65 typedef struct IAccessibleHandler IAccessibleHandler;
     66 #endif
     67 
     68 #ifndef __IAccIdentity_FWD_DEFINED__
     69 #define __IAccIdentity_FWD_DEFINED__
     70 typedef struct IAccIdentity IAccIdentity;
     71 #endif
     72 
     73 #ifndef __IAccPropServer_FWD_DEFINED__
     74 #define __IAccPropServer_FWD_DEFINED__
     75 typedef struct IAccPropServer IAccPropServer;
     76 #endif
     77 
     78 #ifndef __IAccPropServices_FWD_DEFINED__
     79 #define __IAccPropServices_FWD_DEFINED__
     80 typedef struct IAccPropServices IAccPropServices;
     81 #endif
     82 
     83 #ifndef __CAccPropServices_FWD_DEFINED__
     84 #define __CAccPropServices_FWD_DEFINED__
     85 
     86 #ifdef __cplusplus
     87 typedef class CAccPropServices CAccPropServices;
     88 #else
     89 typedef struct CAccPropServices CAccPropServices;
     90 #endif
     91 #endif
     92 
     93   typedef LRESULT (WINAPI *LPFNLRESULTFROMOBJECT)(REFIID riid,WPARAM wParam,LPUNKNOWN punk);
     94   typedef HRESULT (WINAPI *LPFNOBJECTFROMLRESULT)(LRESULT lResult,REFIID riid,WPARAM wParam,void **ppvObject);
     95   typedef HRESULT (WINAPI *LPFNACCESSIBLEOBJECTFROMWINDOW)(HWND hwnd,DWORD dwId,REFIID riid,void **ppvObject);
     96   typedef HRESULT (WINAPI *LPFNACCESSIBLEOBJECTFROMPOINT)(POINT ptScreen,IAccessible **ppacc,VARIANT *pvarChild);
     97   typedef HRESULT (WINAPI *LPFNCREATESTDACCESSIBLEOBJECT)(HWND hwnd,LONG idObject,REFIID riid,void **ppvObject);
     98   typedef HRESULT (WINAPI *LPFNACCESSIBLECHILDREN)(IAccessible *paccContainer,LONG iChildStart,LONG cChildren,VARIANT *rgvarChildren,LONG *pcObtained);
     99 
    100   DEFINE_GUID(LIBID_Accessibility,0x1ea4dbf0,0x3c3b,0x11cf,0x81,0x0c,0x00,0xaa,0x00,0x38,0x9b,0x71);
    101   DEFINE_GUID(IID_IAccessibleHandler,0x03022430,0xABC4,0x11d0,0xBD,0xE2,0x00,0xAA,0x00,0x1A,0x19,0x53);
    102   DEFINE_GUID(IID_IAccIdentity,0x7852b78d,0x1cfd,0x41c1,0xa6,0x15,0x9c,0x0c,0x85,0x96,0x0b,0x5f);
    103   DEFINE_GUID(IID_IAccPropServer,0x76c0dbbb,0x15e0,0x4e7b,0xb6,0x1b,0x20,0xee,0xea,0x20,0x01,0xe0);
    104   DEFINE_GUID(IID_IAccPropServices,0x6e26e776,0x04f0,0x495d,0x80,0xe4,0x33,0x30,0x35,0x2e,0x31,0x69);
    105   DEFINE_GUID(IID_IAccPropMgrInternal,0x2bd370a9,0x3e7f,0x4edd,0x8a,0x85,0xf8,0xfe,0xd1,0xf8,0xe5,0x1f);
    106   DEFINE_GUID(CLSID_AccPropServices,0xb5f8350b,0x0548,0x48b1,0xa6,0xee,0x88,0xbd,0x00,0xb4,0xa5,0xe7);
    107   DEFINE_GUID(IIS_IsOleaccProxy,0x902697fa,0x80e4,0x4560,0x80,0x2a,0xa1,0x3f,0x22,0xa6,0x47,0x09);
    108 
    109 #define GetRoleText __MINGW_NAME_AW(GetRoleText)
    110 #define GetStateText __MINGW_NAME_AW(GetStateText)
    111 #define CreateStdAccessibleProxy __MINGW_NAME_AW(CreateStdAccessibleProxy)
    112 
    113   STDAPI_(LRESULT) LresultFromObject(REFIID riid,WPARAM wParam,LPUNKNOWN punk);
    114   STDAPI ObjectFromLresult(LRESULT lResult,REFIID riid,WPARAM wParam,void **ppvObject);
    115   STDAPI WindowFromAccessibleObject(IAccessible*,HWND *phwnd);
    116   STDAPI AccessibleObjectFromWindow(HWND hwnd,DWORD dwId,REFIID riid,void **ppvObject);
    117   STDAPI AccessibleObjectFromEvent(HWND hwnd,DWORD dwId,DWORD dwChildId,IAccessible **ppacc,VARIANT *pvarChild);
    118   STDAPI AccessibleObjectFromPoint(POINT ptScreen,IAccessible **ppacc,VARIANT *pvarChild);
    119   STDAPI AccessibleChildren (IAccessible *paccContainer,LONG iChildStart,LONG cChildren,VARIANT *rgvarChildren,LONG *pcObtained);
    120   STDAPI_(UINT) GetRoleTextA(DWORD lRole,LPSTR lpszRole,UINT cchRoleMax);
    121   STDAPI_(UINT) GetRoleTextW(DWORD lRole,LPWSTR lpszRole,UINT cchRoleMax);
    122   STDAPI_(UINT) GetStateTextA(DWORD lStateBit,LPSTR lpszState,UINT cchState);
    123   STDAPI_(UINT) GetStateTextW(DWORD lStateBit,LPWSTR lpszState,UINT cchState);
    124   STDAPI_(VOID) GetOleaccVersionInfo(DWORD *pVer,DWORD *pBuild);
    125   STDAPI CreateStdAccessibleObject(HWND hwnd,LONG idObject,REFIID riid,void **ppvObject);
    126   STDAPI CreateStdAccessibleProxyA(HWND hwnd,LPCSTR pClassName,LONG idObject,REFIID riid,void **ppvObject);
    127   STDAPI CreateStdAccessibleProxyW(HWND hwnd,LPCWSTR pClassName,LONG idObject,REFIID riid,void **ppvObject);
    128 
    129 #define MSAA_MENU_SIG __MSABI_LONG(0xAA0DF00D)
    130 
    131   typedef struct tagMSAAMENUINFO {
    132     DWORD dwMSAASignature;
    133     DWORD cchWText;
    134     LPWSTR pszWText;
    135   } MSAAMENUINFO,*LPMSAAMENUINFO;
    136 
    137   DEFINE_GUID(PROPID_ACC_NAME ,0x608d3df8,0x8128,0x4aa7,0xa4,0x28,0xf5,0x5e,0x49,0x26,0x72,0x91);
    138   DEFINE_GUID(PROPID_ACC_VALUE ,0x123fe443,0x211a,0x4615,0x95,0x27,0xc4,0x5a,0x7e,0x93,0x71,0x7a);
    139   DEFINE_GUID(PROPID_ACC_DESCRIPTION ,0x4d48dfe4,0xbd3f,0x491f,0xa6,0x48,0x49,0x2d,0x6f,0x20,0xc5,0x88);
    140   DEFINE_GUID(PROPID_ACC_ROLE ,0xcb905ff2,0x7bd1,0x4c05,0xb3,0xc8,0xe6,0xc2,0x41,0x36,0x4d,0x70);
    141   DEFINE_GUID(PROPID_ACC_STATE ,0xa8d4d5b0,0x0a21,0x42d0,0xa5,0xc0,0x51,0x4e,0x98,0x4f,0x45,0x7b);
    142   DEFINE_GUID(PROPID_ACC_HELP ,0xc831e11f,0x44db,0x4a99,0x97,0x68,0xcb,0x8f,0x97,0x8b,0x72,0x31);
    143   DEFINE_GUID(PROPID_ACC_KEYBOARDSHORTCUT ,0x7d9bceee,0x7d1e,0x4979,0x93,0x82,0x51,0x80,0xf4,0x17,0x2c,0x34);
    144   DEFINE_GUID(PROPID_ACC_DEFAULTACTION ,0x180c072b,0xc27f,0x43c7,0x99,0x22,0xf6,0x35,0x62,0xa4,0x63,0x2b);
    145   DEFINE_GUID(PROPID_ACC_HELPTOPIC ,0x787d1379,0x8ede,0x440b,0x8a,0xec,0x11,0xf7,0xbf,0x90,0x30,0xb3);
    146   DEFINE_GUID(PROPID_ACC_FOCUS ,0x6eb335df,0x1c29,0x4127,0xb1,0x2c,0xde,0xe9,0xfd,0x15,0x7f,0x2b);
    147   DEFINE_GUID(PROPID_ACC_SELECTION ,0xb99d073c,0xd731,0x405b,0x90,0x61,0xd9,0x5e,0x8f,0x84,0x29,0x84);
    148   DEFINE_GUID(PROPID_ACC_PARENT ,0x474c22b6,0xffc2,0x467a,0xb1,0xb5,0xe9,0x58,0xb4,0x65,0x73,0x30);
    149   DEFINE_GUID(PROPID_ACC_NAV_UP ,0x016e1a2b,0x1a4e,0x4767,0x86,0x12,0x33,0x86,0xf6,0x69,0x35,0xec);
    150   DEFINE_GUID(PROPID_ACC_NAV_DOWN ,0x031670ed,0x3cdf,0x48d2,0x96,0x13,0x13,0x8f,0x2d,0xd8,0xa6,0x68);
    151   DEFINE_GUID(PROPID_ACC_NAV_LEFT ,0x228086cb,0x82f1,0x4a39,0x87,0x05,0xdc,0xdc,0x0f,0xff,0x92,0xf5);
    152   DEFINE_GUID(PROPID_ACC_NAV_RIGHT ,0xcd211d9f,0xe1cb,0x4fe5,0xa7,0x7c,0x92,0x0b,0x88,0x4d,0x09,0x5b);
    153   DEFINE_GUID(PROPID_ACC_NAV_PREV ,0x776d3891,0xc73b,0x4480,0xb3,0xf6,0x07,0x6a,0x16,0xa1,0x5a,0xf6);
    154   DEFINE_GUID(PROPID_ACC_NAV_NEXT ,0x1cdc5455,0x8cd9,0x4c92,0xa3,0x71,0x39,0x39,0xa2,0xfe,0x3e,0xee);
    155   DEFINE_GUID(PROPID_ACC_NAV_FIRSTCHILD ,0xcfd02558,0x557b,0x4c67,0x84,0xf9,0x2a,0x09,0xfc,0xe4,0x07,0x49);
    156   DEFINE_GUID(PROPID_ACC_NAV_LASTCHILD ,0x302ecaa5,0x48d5,0x4f8d,0xb6,0x71,0x1a,0x8d,0x20,0xa7,0x78,0x32);
    157   DEFINE_GUID(PROPID_ACC_ROLEMAP ,0xf79acda2,0x140d,0x4fe6,0x89,0x14,0x20,0x84,0x76,0x32,0x82,0x69);
    158   DEFINE_GUID(PROPID_ACC_VALUEMAP ,0xda1c3d79,0xfc5c,0x420e,0xb3,0x99,0x9d,0x15,0x33,0x54,0x9e,0x75);
    159   DEFINE_GUID(PROPID_ACC_STATEMAP ,0x43946c5e,0x0ac0,0x4042,0xb5,0x25,0x07,0xbb,0xdb,0xe1,0x7f,0xa7);
    160   DEFINE_GUID(PROPID_ACC_DESCRIPTIONMAP ,0x1ff1435f,0x8a14,0x477b,0xb2,0x26,0xa0,0xab,0xe2,0x79,0x97,0x5d);
    161   DEFINE_GUID(PROPID_ACC_DODEFAULTACTION ,0x1ba09523,0x2e3b,0x49a6,0xa0,0x59,0x59,0x68,0x2a,0x3c,0x48,0xfd);
    162 #define NAVDIR_MIN (0)
    163 #define NAVDIR_UP (0x1)
    164 #define NAVDIR_DOWN (0x2)
    165 #define NAVDIR_LEFT (0x3)
    166 #define NAVDIR_RIGHT (0x4)
    167 #define NAVDIR_NEXT (0x5)
    168 #define NAVDIR_PREVIOUS (0x6)
    169 #define NAVDIR_FIRSTCHILD (0x7)
    170 #define NAVDIR_LASTCHILD (0x8)
    171 #define NAVDIR_MAX (0x9)
    172 
    173 #define SELFLAG_NONE (0)
    174 #define SELFLAG_TAKEFOCUS (0x1)
    175 #define SELFLAG_TAKESELECTION (0x2)
    176 #define SELFLAG_EXTENDSELECTION (0x4)
    177 #define SELFLAG_ADDSELECTION (0x8)
    178 #define SELFLAG_REMOVESELECTION (0x10)
    179 #define SELFLAG_VALID (0x1f)
    180 
    181 #ifndef STATE_SYSTEM_UNAVAILABLE
    182 #define STATE_SYSTEM_NORMAL (0)
    183 #define STATE_SYSTEM_UNAVAILABLE (0x1)
    184 #define STATE_SYSTEM_SELECTED (0x2)
    185 #define STATE_SYSTEM_FOCUSED (0x4)
    186 #define STATE_SYSTEM_PRESSED (0x8)
    187 #define STATE_SYSTEM_CHECKED (0x10)
    188 #define STATE_SYSTEM_MIXED (0x20)
    189 #define STATE_SYSTEM_INDETERMINATE (STATE_SYSTEM_MIXED)
    190 #define STATE_SYSTEM_READONLY (0x40)
    191 #define STATE_SYSTEM_HOTTRACKED (0x80)
    192 #define STATE_SYSTEM_DEFAULT (0x100)
    193 #define STATE_SYSTEM_EXPANDED (0x200)
    194 #define STATE_SYSTEM_COLLAPSED (0x400)
    195 #define STATE_SYSTEM_BUSY (0x800)
    196 #define STATE_SYSTEM_FLOATING (0x1000)
    197 #define STATE_SYSTEM_MARQUEED (0x2000)
    198 #define STATE_SYSTEM_ANIMATED (0x4000)
    199 #define STATE_SYSTEM_INVISIBLE (0x8000)
    200 #define STATE_SYSTEM_OFFSCREEN (0x10000)
    201 #define STATE_SYSTEM_SIZEABLE (0x20000)
    202 #define STATE_SYSTEM_MOVEABLE (0x40000)
    203 #define STATE_SYSTEM_SELFVOICING (0x80000)
    204 #define STATE_SYSTEM_FOCUSABLE (0x100000)
    205 #define STATE_SYSTEM_SELECTABLE (0x200000)
    206 #define STATE_SYSTEM_LINKED (0x400000)
    207 #define STATE_SYSTEM_TRAVERSED (0x800000)
    208 #define STATE_SYSTEM_MULTISELECTABLE (0x1000000)
    209 #define STATE_SYSTEM_EXTSELECTABLE (0x2000000)
    210 #define STATE_SYSTEM_ALERT_LOW (0x4000000)
    211 #define STATE_SYSTEM_ALERT_MEDIUM (0x8000000)
    212 #define STATE_SYSTEM_ALERT_HIGH (0x10000000)
    213 #define STATE_SYSTEM_PROTECTED (0x20000000)
    214 #define STATE_SYSTEM_VALID (0x7fffffff)
    215 #endif
    216 
    217 #ifndef STATE_SYSTEM_HASPOPUP
    218 #define STATE_SYSTEM_HASPOPUP (0x40000000)
    219 #endif
    220 #define ROLE_SYSTEM_TITLEBAR (0x1)
    221 #define ROLE_SYSTEM_MENUBAR (0x2)
    222 #define ROLE_SYSTEM_SCROLLBAR (0x3)
    223 #define ROLE_SYSTEM_GRIP (0x4)
    224 #define ROLE_SYSTEM_SOUND (0x5)
    225 #define ROLE_SYSTEM_CURSOR (0x6)
    226 #define ROLE_SYSTEM_CARET (0x7)
    227 #define ROLE_SYSTEM_ALERT (0x8)
    228 #define ROLE_SYSTEM_WINDOW (0x9)
    229 #define ROLE_SYSTEM_CLIENT (0xa)
    230 #define ROLE_SYSTEM_MENUPOPUP (0xb)
    231 #define ROLE_SYSTEM_MENUITEM (0xc)
    232 #define ROLE_SYSTEM_TOOLTIP (0xd)
    233 #define ROLE_SYSTEM_APPLICATION (0xe)
    234 #define ROLE_SYSTEM_DOCUMENT (0xf)
    235 #define ROLE_SYSTEM_PANE (0x10)
    236 #define ROLE_SYSTEM_CHART (0x11)
    237 #define ROLE_SYSTEM_DIALOG (0x12)
    238 #define ROLE_SYSTEM_BORDER (0x13)
    239 #define ROLE_SYSTEM_GROUPING (0x14)
    240 #define ROLE_SYSTEM_SEPARATOR (0x15)
    241 #define ROLE_SYSTEM_TOOLBAR (0x16)
    242 #define ROLE_SYSTEM_STATUSBAR (0x17)
    243 #define ROLE_SYSTEM_TABLE (0x18)
    244 #define ROLE_SYSTEM_COLUMNHEADER (0x19)
    245 #define ROLE_SYSTEM_ROWHEADER (0x1a)
    246 #define ROLE_SYSTEM_COLUMN (0x1b)
    247 #define ROLE_SYSTEM_ROW (0x1c)
    248 #define ROLE_SYSTEM_CELL (0x1d)
    249 #define ROLE_SYSTEM_LINK (0x1e)
    250 #define ROLE_SYSTEM_HELPBALLOON (0x1f)
    251 #define ROLE_SYSTEM_CHARACTER (0x20)
    252 #define ROLE_SYSTEM_LIST (0x21)
    253 #define ROLE_SYSTEM_LISTITEM (0x22)
    254 #define ROLE_SYSTEM_OUTLINE (0x23)
    255 #define ROLE_SYSTEM_OUTLINEITEM (0x24)
    256 #define ROLE_SYSTEM_PAGETAB (0x25)
    257 #define ROLE_SYSTEM_PROPERTYPAGE (0x26)
    258 #define ROLE_SYSTEM_INDICATOR (0x27)
    259 #define ROLE_SYSTEM_GRAPHIC (0x28)
    260 #define ROLE_SYSTEM_STATICTEXT (0x29)
    261 #define ROLE_SYSTEM_TEXT (0x2a)
    262 #define ROLE_SYSTEM_PUSHBUTTON (0x2b)
    263 #define ROLE_SYSTEM_CHECKBUTTON (0x2c)
    264 #define ROLE_SYSTEM_RADIOBUTTON (0x2d)
    265 #define ROLE_SYSTEM_COMBOBOX (0x2e)
    266 #define ROLE_SYSTEM_DROPLIST (0x2f)
    267 #define ROLE_SYSTEM_PROGRESSBAR (0x30)
    268 #define ROLE_SYSTEM_DIAL (0x31)
    269 #define ROLE_SYSTEM_HOTKEYFIELD (0x32)
    270 #define ROLE_SYSTEM_SLIDER (0x33)
    271 #define ROLE_SYSTEM_SPINBUTTON (0x34)
    272 #define ROLE_SYSTEM_DIAGRAM (0x35)
    273 #define ROLE_SYSTEM_ANIMATION (0x36)
    274 #define ROLE_SYSTEM_EQUATION (0x37)
    275 #define ROLE_SYSTEM_BUTTONDROPDOWN (0x38)
    276 #define ROLE_SYSTEM_BUTTONMENU (0x39)
    277 #define ROLE_SYSTEM_BUTTONDROPDOWNGRID (0x3a)
    278 #define ROLE_SYSTEM_WHITESPACE (0x3b)
    279 #define ROLE_SYSTEM_PAGETABLIST (0x3c)
    280 #define ROLE_SYSTEM_CLOCK (0x3d)
    281 #define ROLE_SYSTEM_SPLITBUTTON (0x3e)
    282 #define ROLE_SYSTEM_IPADDRESS (0x3f)
    283 #define ROLE_SYSTEM_OUTLINEBUTTON (0x40)
    284 /*****************************************************************************
    285  * IAccessible interface
    286  */
    287 #ifndef __IAccessible_INTERFACE_DEFINED__
    288 #define __IAccessible_INTERFACE_DEFINED__
    289 
    290 typedef IAccessible *LPACCESSIBLE;
    291 #define DISPID_ACC_PARENT (-5000)
    292 
    293 #define DISPID_ACC_CHILDCOUNT (-5001)
    294 
    295 #define DISPID_ACC_CHILD (-5002)
    296 
    297 #define DISPID_ACC_NAME (-5003)
    298 
    299 #define DISPID_ACC_VALUE (-5004)
    300 
    301 #define DISPID_ACC_DESCRIPTION (-5005)
    302 
    303 #define DISPID_ACC_ROLE (-5006)
    304 
    305 #define DISPID_ACC_STATE (-5007)
    306 
    307 #define DISPID_ACC_HELP (-5008)
    308 
    309 #define DISPID_ACC_HELPTOPIC (-5009)
    310 
    311 #define DISPID_ACC_KEYBOARDSHORTCUT (-5010)
    312 
    313 #define DISPID_ACC_FOCUS (-5011)
    314 
    315 #define DISPID_ACC_SELECTION (-5012)
    316 
    317 #define DISPID_ACC_DEFAULTACTION (-5013)
    318 
    319 #define DISPID_ACC_SELECT (-5014)
    320 
    321 #define DISPID_ACC_LOCATION (-5015)
    322 
    323 #define DISPID_ACC_NAVIGATE (-5016)
    324 
    325 #define DISPID_ACC_HITTEST (-5017)
    326 
    327 #define DISPID_ACC_DODEFAULTACTION (-5018)
    328 
    329 DEFINE_GUID(IID_IAccessible, 0x618736e0, 0x3c3d, 0x11cf, 0x81,0x0c, 0x00,0xaa,0x00,0x38,0x9b,0x71);
    330 #if defined(__cplusplus) && !defined(CINTERFACE)
    331 MIDL_INTERFACE("618736e0-3c3d-11cf-810c-00aa00389b71")
    332 IAccessible : public IDispatch
    333 {
    334     virtual HRESULT STDMETHODCALLTYPE get_accParent(
    335         IDispatch **ppdispParent) = 0;
    336 
    337     virtual HRESULT STDMETHODCALLTYPE get_accChildCount(
    338         LONG *pcountChildren) = 0;
    339 
    340     virtual HRESULT STDMETHODCALLTYPE get_accChild(
    341         VARIANT varChildID,
    342         IDispatch **ppdispChild) = 0;
    343 
    344     virtual HRESULT STDMETHODCALLTYPE get_accName(
    345         VARIANT varID,
    346         BSTR *pszName) = 0;
    347 
    348     virtual HRESULT STDMETHODCALLTYPE get_accValue(
    349         VARIANT varID,
    350         BSTR *pszValue) = 0;
    351 
    352     virtual HRESULT STDMETHODCALLTYPE get_accDescription(
    353         VARIANT varID,
    354         BSTR *pszDescription) = 0;
    355 
    356     virtual HRESULT STDMETHODCALLTYPE get_accRole(
    357         VARIANT varID,
    358         VARIANT *pvarRole) = 0;
    359 
    360     virtual HRESULT STDMETHODCALLTYPE get_accState(
    361         VARIANT varID,
    362         VARIANT *pvarState) = 0;
    363 
    364     virtual HRESULT STDMETHODCALLTYPE get_accHelp(
    365         VARIANT varID,
    366         BSTR *pszHelp) = 0;
    367 
    368     virtual HRESULT STDMETHODCALLTYPE get_accHelpTopic(
    369         BSTR *pszHelpFile,
    370         VARIANT varID,
    371         LONG *pidTopic) = 0;
    372 
    373     virtual HRESULT STDMETHODCALLTYPE get_accKeyboardShortcut(
    374         VARIANT varID,
    375         BSTR *pszKeyboardShortcut) = 0;
    376 
    377     virtual HRESULT STDMETHODCALLTYPE get_accFocus(
    378         VARIANT *pvarID) = 0;
    379 
    380     virtual HRESULT STDMETHODCALLTYPE get_accSelection(
    381         VARIANT *pvarID) = 0;
    382 
    383     virtual HRESULT STDMETHODCALLTYPE get_accDefaultAction(
    384         VARIANT varID,
    385         BSTR *pszDefaultAction) = 0;
    386 
    387     virtual HRESULT STDMETHODCALLTYPE accSelect(
    388         LONG flagsSelect,
    389         VARIANT varID) = 0;
    390 
    391     virtual HRESULT STDMETHODCALLTYPE accLocation(
    392         LONG *pxLeft,
    393         LONG *pyTop,
    394         LONG *pcxWidth,
    395         LONG *pcyHeight,
    396         VARIANT varID) = 0;
    397 
    398     virtual HRESULT STDMETHODCALLTYPE accNavigate(
    399         LONG navDir,
    400         VARIANT varStart,
    401         VARIANT *pvarEnd) = 0;
    402 
    403     virtual HRESULT STDMETHODCALLTYPE accHitTest(
    404         LONG xLeft,
    405         LONG yTop,
    406         VARIANT *pvarID) = 0;
    407 
    408     virtual HRESULT STDMETHODCALLTYPE accDoDefaultAction(
    409         VARIANT varID) = 0;
    410 
    411     virtual HRESULT STDMETHODCALLTYPE put_accName(
    412         VARIANT varID,
    413         BSTR pszName) = 0;
    414 
    415     virtual HRESULT STDMETHODCALLTYPE put_accValue(
    416         VARIANT varID,
    417         BSTR pszValue) = 0;
    418 
    419 };
    420 #ifdef __CRT_UUID_DECL
    421 __CRT_UUID_DECL(IAccessible, 0x618736e0, 0x3c3d, 0x11cf, 0x81,0x0c, 0x00,0xaa,0x00,0x38,0x9b,0x71)
    422 #endif
    423 #else
    424 typedef struct IAccessibleVtbl {
    425     BEGIN_INTERFACE
    426 
    427     /*** IUnknown methods ***/
    428     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
    429         IAccessible *This,
    430         REFIID riid,
    431         void **ppvObject);
    432 
    433     ULONG (STDMETHODCALLTYPE *AddRef)(
    434         IAccessible *This);
    435 
    436     ULONG (STDMETHODCALLTYPE *Release)(
    437         IAccessible *This);
    438 
    439     /*** IDispatch methods ***/
    440     HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
    441         IAccessible *This,
    442         UINT *pctinfo);
    443 
    444     HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
    445         IAccessible *This,
    446         UINT iTInfo,
    447         LCID lcid,
    448         ITypeInfo **ppTInfo);
    449 
    450     HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
    451         IAccessible *This,
    452         REFIID riid,
    453         LPOLESTR *rgszNames,
    454         UINT cNames,
    455         LCID lcid,
    456         DISPID *rgDispId);
    457 
    458     HRESULT (STDMETHODCALLTYPE *Invoke)(
    459         IAccessible *This,
    460         DISPID dispIdMember,
    461         REFIID riid,
    462         LCID lcid,
    463         WORD wFlags,
    464         DISPPARAMS *pDispParams,
    465         VARIANT *pVarResult,
    466         EXCEPINFO *pExcepInfo,
    467         UINT *puArgErr);
    468 
    469     /*** IAccessible methods ***/
    470     HRESULT (STDMETHODCALLTYPE *get_accParent)(
    471         IAccessible *This,
    472         IDispatch **ppdispParent);
    473 
    474     HRESULT (STDMETHODCALLTYPE *get_accChildCount)(
    475         IAccessible *This,
    476         LONG *pcountChildren);
    477 
    478     HRESULT (STDMETHODCALLTYPE *get_accChild)(
    479         IAccessible *This,
    480         VARIANT varChildID,
    481         IDispatch **ppdispChild);
    482 
    483     HRESULT (STDMETHODCALLTYPE *get_accName)(
    484         IAccessible *This,
    485         VARIANT varID,
    486         BSTR *pszName);
    487 
    488     HRESULT (STDMETHODCALLTYPE *get_accValue)(
    489         IAccessible *This,
    490         VARIANT varID,
    491         BSTR *pszValue);
    492 
    493     HRESULT (STDMETHODCALLTYPE *get_accDescription)(
    494         IAccessible *This,
    495         VARIANT varID,
    496         BSTR *pszDescription);
    497 
    498     HRESULT (STDMETHODCALLTYPE *get_accRole)(
    499         IAccessible *This,
    500         VARIANT varID,
    501         VARIANT *pvarRole);
    502 
    503     HRESULT (STDMETHODCALLTYPE *get_accState)(
    504         IAccessible *This,
    505         VARIANT varID,
    506         VARIANT *pvarState);
    507 
    508     HRESULT (STDMETHODCALLTYPE *get_accHelp)(
    509         IAccessible *This,
    510         VARIANT varID,
    511         BSTR *pszHelp);
    512 
    513     HRESULT (STDMETHODCALLTYPE *get_accHelpTopic)(
    514         IAccessible *This,
    515         BSTR *pszHelpFile,
    516         VARIANT varID,
    517         LONG *pidTopic);
    518 
    519     HRESULT (STDMETHODCALLTYPE *get_accKeyboardShortcut)(
    520         IAccessible *This,
    521         VARIANT varID,
    522         BSTR *pszKeyboardShortcut);
    523 
    524     HRESULT (STDMETHODCALLTYPE *get_accFocus)(
    525         IAccessible *This,
    526         VARIANT *pvarID);
    527 
    528     HRESULT (STDMETHODCALLTYPE *get_accSelection)(
    529         IAccessible *This,
    530         VARIANT *pvarID);
    531 
    532     HRESULT (STDMETHODCALLTYPE *get_accDefaultAction)(
    533         IAccessible *This,
    534         VARIANT varID,
    535         BSTR *pszDefaultAction);
    536 
    537     HRESULT (STDMETHODCALLTYPE *accSelect)(
    538         IAccessible *This,
    539         LONG flagsSelect,
    540         VARIANT varID);
    541 
    542     HRESULT (STDMETHODCALLTYPE *accLocation)(
    543         IAccessible *This,
    544         LONG *pxLeft,
    545         LONG *pyTop,
    546         LONG *pcxWidth,
    547         LONG *pcyHeight,
    548         VARIANT varID);
    549 
    550     HRESULT (STDMETHODCALLTYPE *accNavigate)(
    551         IAccessible *This,
    552         LONG navDir,
    553         VARIANT varStart,
    554         VARIANT *pvarEnd);
    555 
    556     HRESULT (STDMETHODCALLTYPE *accHitTest)(
    557         IAccessible *This,
    558         LONG xLeft,
    559         LONG yTop,
    560         VARIANT *pvarID);
    561 
    562     HRESULT (STDMETHODCALLTYPE *accDoDefaultAction)(
    563         IAccessible *This,
    564         VARIANT varID);
    565 
    566     HRESULT (STDMETHODCALLTYPE *put_accName)(
    567         IAccessible *This,
    568         VARIANT varID,
    569         BSTR pszName);
    570 
    571     HRESULT (STDMETHODCALLTYPE *put_accValue)(
    572         IAccessible *This,
    573         VARIANT varID,
    574         BSTR pszValue);
    575 
    576     END_INTERFACE
    577 } IAccessibleVtbl;
    578 
    579 interface IAccessible {
    580     CONST_VTBL IAccessibleVtbl* lpVtbl;
    581 };
    582 
    583 #ifdef COBJMACROS
    584 #ifndef WIDL_C_INLINE_WRAPPERS
    585 /*** IUnknown methods ***/
    586 #define IAccessible_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
    587 #define IAccessible_AddRef(This) (This)->lpVtbl->AddRef(This)
    588 #define IAccessible_Release(This) (This)->lpVtbl->Release(This)
    589 /*** IDispatch methods ***/
    590 #define IAccessible_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
    591 #define IAccessible_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
    592 #define IAccessible_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
    593 #define IAccessible_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
    594 /*** IAccessible methods ***/
    595 #define IAccessible_get_accParent(This,ppdispParent) (This)->lpVtbl->get_accParent(This,ppdispParent)
    596 #define IAccessible_get_accChildCount(This,pcountChildren) (This)->lpVtbl->get_accChildCount(This,pcountChildren)
    597 #define IAccessible_get_accChild(This,varChildID,ppdispChild) (This)->lpVtbl->get_accChild(This,varChildID,ppdispChild)
    598 #define IAccessible_get_accName(This,varID,pszName) (This)->lpVtbl->get_accName(This,varID,pszName)
    599 #define IAccessible_get_accValue(This,varID,pszValue) (This)->lpVtbl->get_accValue(This,varID,pszValue)
    600 #define IAccessible_get_accDescription(This,varID,pszDescription) (This)->lpVtbl->get_accDescription(This,varID,pszDescription)
    601 #define IAccessible_get_accRole(This,varID,pvarRole) (This)->lpVtbl->get_accRole(This,varID,pvarRole)
    602 #define IAccessible_get_accState(This,varID,pvarState) (This)->lpVtbl->get_accState(This,varID,pvarState)
    603 #define IAccessible_get_accHelp(This,varID,pszHelp) (This)->lpVtbl->get_accHelp(This,varID,pszHelp)
    604 #define IAccessible_get_accHelpTopic(This,pszHelpFile,varID,pidTopic) (This)->lpVtbl->get_accHelpTopic(This,pszHelpFile,varID,pidTopic)
    605 #define IAccessible_get_accKeyboardShortcut(This,varID,pszKeyboardShortcut) (This)->lpVtbl->get_accKeyboardShortcut(This,varID,pszKeyboardShortcut)
    606 #define IAccessible_get_accFocus(This,pvarID) (This)->lpVtbl->get_accFocus(This,pvarID)
    607 #define IAccessible_get_accSelection(This,pvarID) (This)->lpVtbl->get_accSelection(This,pvarID)
    608 #define IAccessible_get_accDefaultAction(This,varID,pszDefaultAction) (This)->lpVtbl->get_accDefaultAction(This,varID,pszDefaultAction)
    609 #define IAccessible_accSelect(This,flagsSelect,varID) (This)->lpVtbl->accSelect(This,flagsSelect,varID)
    610 #define IAccessible_accLocation(This,pxLeft,pyTop,pcxWidth,pcyHeight,varID) (This)->lpVtbl->accLocation(This,pxLeft,pyTop,pcxWidth,pcyHeight,varID)
    611 #define IAccessible_accNavigate(This,navDir,varStart,pvarEnd) (This)->lpVtbl->accNavigate(This,navDir,varStart,pvarEnd)
    612 #define IAccessible_accHitTest(This,xLeft,yTop,pvarID) (This)->lpVtbl->accHitTest(This,xLeft,yTop,pvarID)
    613 #define IAccessible_accDoDefaultAction(This,varID) (This)->lpVtbl->accDoDefaultAction(This,varID)
    614 #define IAccessible_put_accName(This,varID,pszName) (This)->lpVtbl->put_accName(This,varID,pszName)
    615 #define IAccessible_put_accValue(This,varID,pszValue) (This)->lpVtbl->put_accValue(This,varID,pszValue)
    616 #else
    617 /*** IUnknown methods ***/
    618 static inline HRESULT IAccessible_QueryInterface(IAccessible* This,REFIID riid,void **ppvObject) {
    619     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
    620 }
    621 static inline ULONG IAccessible_AddRef(IAccessible* This) {
    622     return This->lpVtbl->AddRef(This);
    623 }
    624 static inline ULONG IAccessible_Release(IAccessible* This) {
    625     return This->lpVtbl->Release(This);
    626 }
    627 /*** IDispatch methods ***/
    628 static inline HRESULT IAccessible_GetTypeInfoCount(IAccessible* This,UINT *pctinfo) {
    629     return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
    630 }
    631 static inline HRESULT IAccessible_GetTypeInfo(IAccessible* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
    632     return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
    633 }
    634 static inline HRESULT IAccessible_GetIDsOfNames(IAccessible* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
    635     return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
    636 }
    637 static inline HRESULT IAccessible_Invoke(IAccessible* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
    638     return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
    639 }
    640 /*** IAccessible methods ***/
    641 static inline HRESULT IAccessible_get_accParent(IAccessible* This,IDispatch **ppdispParent) {
    642     return This->lpVtbl->get_accParent(This,ppdispParent);
    643 }
    644 static inline HRESULT IAccessible_get_accChildCount(IAccessible* This,LONG *pcountChildren) {
    645     return This->lpVtbl->get_accChildCount(This,pcountChildren);
    646 }
    647 static inline HRESULT IAccessible_get_accChild(IAccessible* This,VARIANT varChildID,IDispatch **ppdispChild) {
    648     return This->lpVtbl->get_accChild(This,varChildID,ppdispChild);
    649 }
    650 static inline HRESULT IAccessible_get_accName(IAccessible* This,VARIANT varID,BSTR *pszName) {
    651     return This->lpVtbl->get_accName(This,varID,pszName);
    652 }
    653 static inline HRESULT IAccessible_get_accValue(IAccessible* This,VARIANT varID,BSTR *pszValue) {
    654     return This->lpVtbl->get_accValue(This,varID,pszValue);
    655 }
    656 static inline HRESULT IAccessible_get_accDescription(IAccessible* This,VARIANT varID,BSTR *pszDescription) {
    657     return This->lpVtbl->get_accDescription(This,varID,pszDescription);
    658 }
    659 static inline HRESULT IAccessible_get_accRole(IAccessible* This,VARIANT varID,VARIANT *pvarRole) {
    660     return This->lpVtbl->get_accRole(This,varID,pvarRole);
    661 }
    662 static inline HRESULT IAccessible_get_accState(IAccessible* This,VARIANT varID,VARIANT *pvarState) {
    663     return This->lpVtbl->get_accState(This,varID,pvarState);
    664 }
    665 static inline HRESULT IAccessible_get_accHelp(IAccessible* This,VARIANT varID,BSTR *pszHelp) {
    666     return This->lpVtbl->get_accHelp(This,varID,pszHelp);
    667 }
    668 static inline HRESULT IAccessible_get_accHelpTopic(IAccessible* This,BSTR *pszHelpFile,VARIANT varID,LONG *pidTopic) {
    669     return This->lpVtbl->get_accHelpTopic(This,pszHelpFile,varID,pidTopic);
    670 }
    671 static inline HRESULT IAccessible_get_accKeyboardShortcut(IAccessible* This,VARIANT varID,BSTR *pszKeyboardShortcut) {
    672     return This->lpVtbl->get_accKeyboardShortcut(This,varID,pszKeyboardShortcut);
    673 }
    674 static inline HRESULT IAccessible_get_accFocus(IAccessible* This,VARIANT *pvarID) {
    675     return This->lpVtbl->get_accFocus(This,pvarID);
    676 }
    677 static inline HRESULT IAccessible_get_accSelection(IAccessible* This,VARIANT *pvarID) {
    678     return This->lpVtbl->get_accSelection(This,pvarID);
    679 }
    680 static inline HRESULT IAccessible_get_accDefaultAction(IAccessible* This,VARIANT varID,BSTR *pszDefaultAction) {
    681     return This->lpVtbl->get_accDefaultAction(This,varID,pszDefaultAction);
    682 }
    683 static inline HRESULT IAccessible_accSelect(IAccessible* This,LONG flagsSelect,VARIANT varID) {
    684     return This->lpVtbl->accSelect(This,flagsSelect,varID);
    685 }
    686 static inline HRESULT IAccessible_accLocation(IAccessible* This,LONG *pxLeft,LONG *pyTop,LONG *pcxWidth,LONG *pcyHeight,VARIANT varID) {
    687     return This->lpVtbl->accLocation(This,pxLeft,pyTop,pcxWidth,pcyHeight,varID);
    688 }
    689 static inline HRESULT IAccessible_accNavigate(IAccessible* This,LONG navDir,VARIANT varStart,VARIANT *pvarEnd) {
    690     return This->lpVtbl->accNavigate(This,navDir,varStart,pvarEnd);
    691 }
    692 static inline HRESULT IAccessible_accHitTest(IAccessible* This,LONG xLeft,LONG yTop,VARIANT *pvarID) {
    693     return This->lpVtbl->accHitTest(This,xLeft,yTop,pvarID);
    694 }
    695 static inline HRESULT IAccessible_accDoDefaultAction(IAccessible* This,VARIANT varID) {
    696     return This->lpVtbl->accDoDefaultAction(This,varID);
    697 }
    698 static inline HRESULT IAccessible_put_accName(IAccessible* This,VARIANT varID,BSTR pszName) {
    699     return This->lpVtbl->put_accName(This,varID,pszName);
    700 }
    701 static inline HRESULT IAccessible_put_accValue(IAccessible* This,VARIANT varID,BSTR pszValue) {
    702     return This->lpVtbl->put_accValue(This,varID,pszValue);
    703 }
    704 #endif
    705 #endif
    706 
    707 #endif
    708 
    709 
    710 #endif  /* __IAccessible_INTERFACE_DEFINED__ */
    711 
    712 #ifndef __IAccessibleHandler_INTERFACE_DEFINED__
    713 #define __IAccessibleHandler_INTERFACE_DEFINED__
    714   typedef IAccessibleHandler *LPACCESSIBLEHANDLER;
    715 
    716   EXTERN_C const IID IID_IAccessibleHandler;
    717 #if defined(__cplusplus) && !defined(CINTERFACE)
    718   struct IAccessibleHandler : public IUnknown {
    719   public:
    720     virtual HRESULT WINAPI AccessibleObjectFromID(LONG hwnd,LONG lObjectID,LPACCESSIBLE *pIAccessible) = 0;
    721   };
    722 #else
    723   typedef struct IAccessibleHandlerVtbl {
    724     BEGIN_INTERFACE
    725       HRESULT (WINAPI *QueryInterface)(IAccessibleHandler *This,REFIID riid,void **ppvObject);
    726       ULONG (WINAPI *AddRef)(IAccessibleHandler *This);
    727       ULONG (WINAPI *Release)(IAccessibleHandler *This);
    728       HRESULT (WINAPI *AccessibleObjectFromID)(IAccessibleHandler *This,LONG hwnd,LONG lObjectID,LPACCESSIBLE *pIAccessible);
    729     END_INTERFACE
    730   } IAccessibleHandlerVtbl;
    731   struct IAccessibleHandler {
    732     CONST_VTBL struct IAccessibleHandlerVtbl *lpVtbl;
    733   };
    734 #ifdef COBJMACROS
    735 #define IAccessibleHandler_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
    736 #define IAccessibleHandler_AddRef(This) (This)->lpVtbl->AddRef(This)
    737 #define IAccessibleHandler_Release(This) (This)->lpVtbl->Release(This)
    738 #define IAccessibleHandler_AccessibleObjectFromID(This,hwnd,lObjectID,pIAccessible) (This)->lpVtbl->AccessibleObjectFromID(This,hwnd,lObjectID,pIAccessible)
    739 #endif
    740 #endif
    741   HRESULT WINAPI IAccessibleHandler_AccessibleObjectFromID_Proxy(IAccessibleHandler *This,LONG hwnd,LONG lObjectID,LPACCESSIBLE *pIAccessible);
    742   void __RPC_STUB IAccessibleHandler_AccessibleObjectFromID_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    743 #endif
    744 
    745   typedef enum AnnoScope {
    746     ANNO_THIS = 0,ANNO_CONTAINER = 1
    747   } AnnoScope;
    748 
    749   typedef GUID MSAAPROPID;
    750 
    751   extern RPC_IF_HANDLE __MIDL_itf_oleacc_0116_v0_0_c_ifspec;
    752   extern RPC_IF_HANDLE __MIDL_itf_oleacc_0116_v0_0_s_ifspec;
    753 
    754 #ifndef __IAccIdentity_INTERFACE_DEFINED__
    755 #define __IAccIdentity_INTERFACE_DEFINED__
    756   EXTERN_C const IID IID_IAccIdentity;
    757 #if defined(__cplusplus) && !defined(CINTERFACE)
    758   struct IAccIdentity : public IUnknown {
    759   public:
    760     virtual HRESULT WINAPI GetIdentityString(DWORD dwIDChild,BYTE **ppIDString,DWORD *pdwIDStringLen) = 0;
    761   };
    762 #else
    763   typedef struct IAccIdentityVtbl {
    764     BEGIN_INTERFACE
    765       HRESULT (WINAPI *QueryInterface)(IAccIdentity *This,REFIID riid,void **ppvObject);
    766       ULONG (WINAPI *AddRef)(IAccIdentity *This);
    767       ULONG (WINAPI *Release)(IAccIdentity *This);
    768       HRESULT (WINAPI *GetIdentityString)(IAccIdentity *This,DWORD dwIDChild,BYTE **ppIDString,DWORD *pdwIDStringLen);
    769     END_INTERFACE
    770   } IAccIdentityVtbl;
    771   struct IAccIdentity {
    772     CONST_VTBL struct IAccIdentityVtbl *lpVtbl;
    773   };
    774 #ifdef COBJMACROS
    775 #define IAccIdentity_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
    776 #define IAccIdentity_AddRef(This) (This)->lpVtbl->AddRef(This)
    777 #define IAccIdentity_Release(This) (This)->lpVtbl->Release(This)
    778 #define IAccIdentity_GetIdentityString(This,dwIDChild,ppIDString,pdwIDStringLen) (This)->lpVtbl->GetIdentityString(This,dwIDChild,ppIDString,pdwIDStringLen)
    779 #endif
    780 #endif
    781   HRESULT WINAPI IAccIdentity_GetIdentityString_Proxy(IAccIdentity *This,DWORD dwIDChild,BYTE **ppIDString,DWORD *pdwIDStringLen);
    782   void __RPC_STUB IAccIdentity_GetIdentityString_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    783 #endif
    784 
    785 #ifndef __IAccPropServer_INTERFACE_DEFINED__
    786 #define __IAccPropServer_INTERFACE_DEFINED__
    787   EXTERN_C const IID IID_IAccPropServer;
    788 #if defined(__cplusplus) && !defined(CINTERFACE)
    789   struct IAccPropServer : public IUnknown {
    790   public:
    791     virtual HRESULT WINAPI GetPropValue(const BYTE *pIDString,DWORD dwIDStringLen,MSAAPROPID idProp,VARIANT *pvarValue,WINBOOL *pfHasProp) = 0;
    792   };
    793 #else
    794   typedef struct IAccPropServerVtbl {
    795     BEGIN_INTERFACE
    796       HRESULT (WINAPI *QueryInterface)(IAccPropServer *This,REFIID riid,void **ppvObject);
    797       ULONG (WINAPI *AddRef)(IAccPropServer *This);
    798       ULONG (WINAPI *Release)(IAccPropServer *This);
    799       HRESULT (WINAPI *GetPropValue)(IAccPropServer *This,const BYTE *pIDString,DWORD dwIDStringLen,MSAAPROPID idProp,VARIANT *pvarValue,WINBOOL *pfHasProp);
    800     END_INTERFACE
    801   } IAccPropServerVtbl;
    802   struct IAccPropServer {
    803     CONST_VTBL struct IAccPropServerVtbl *lpVtbl;
    804   };
    805 #ifdef COBJMACROS
    806 #define IAccPropServer_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
    807 #define IAccPropServer_AddRef(This) (This)->lpVtbl->AddRef(This)
    808 #define IAccPropServer_Release(This) (This)->lpVtbl->Release(This)
    809 #define IAccPropServer_GetPropValue(This,pIDString,dwIDStringLen,idProp,pvarValue,pfHasProp) (This)->lpVtbl->GetPropValue(This,pIDString,dwIDStringLen,idProp,pvarValue,pfHasProp)
    810 #endif
    811 #endif
    812   HRESULT WINAPI IAccPropServer_GetPropValue_Proxy(IAccPropServer *This,const BYTE *pIDString,DWORD dwIDStringLen,MSAAPROPID idProp,VARIANT *pvarValue,WINBOOL *pfHasProp);
    813   void __RPC_STUB IAccPropServer_GetPropValue_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    814 #endif
    815 
    816 #ifndef __IAccPropServices_INTERFACE_DEFINED__
    817 #define __IAccPropServices_INTERFACE_DEFINED__
    818   EXTERN_C const IID IID_IAccPropServices;
    819 #if defined(__cplusplus) && !defined(CINTERFACE)
    820   struct IAccPropServices : public IUnknown {
    821   public:
    822     virtual HRESULT WINAPI SetPropValue(const BYTE *pIDString,DWORD dwIDStringLen,MSAAPROPID idProp,VARIANT var) = 0;
    823     virtual HRESULT WINAPI SetPropServer(const BYTE *pIDString,DWORD dwIDStringLen,const MSAAPROPID *paProps,int cProps,IAccPropServer *pServer,AnnoScope annoScope) = 0;
    824     virtual HRESULT WINAPI ClearProps(const BYTE *pIDString,DWORD dwIDStringLen,const MSAAPROPID *paProps,int cProps) = 0;
    825     virtual HRESULT WINAPI SetHwndProp(HWND hwnd,DWORD idObject,DWORD idChild,MSAAPROPID idProp,VARIANT var) = 0;
    826     virtual HRESULT WINAPI SetHwndPropStr(HWND hwnd,DWORD idObject,DWORD idChild,MSAAPROPID idProp,LPCWSTR str) = 0;
    827     virtual HRESULT WINAPI SetHwndPropServer(HWND hwnd,DWORD idObject,DWORD idChild,const MSAAPROPID *paProps,int cProps,IAccPropServer *pServer,AnnoScope annoScope) = 0;
    828     virtual HRESULT WINAPI ClearHwndProps(HWND hwnd,DWORD idObject,DWORD idChild,const MSAAPROPID *paProps,int cProps) = 0;
    829     virtual HRESULT WINAPI ComposeHwndIdentityString(HWND hwnd,DWORD idObject,DWORD idChild,BYTE **ppIDString,DWORD *pdwIDStringLen) = 0;
    830     virtual HRESULT WINAPI DecomposeHwndIdentityString(const BYTE *pIDString,DWORD dwIDStringLen,HWND *phwnd,DWORD *pidObject,DWORD *pidChild) = 0;
    831     virtual HRESULT WINAPI SetHmenuProp(HMENU hmenu,DWORD idChild,MSAAPROPID idProp,VARIANT var) = 0;
    832     virtual HRESULT WINAPI SetHmenuPropStr(HMENU hmenu,DWORD idChild,MSAAPROPID idProp,LPCWSTR str) = 0;
    833     virtual HRESULT WINAPI SetHmenuPropServer(HMENU hmenu,DWORD idChild,const MSAAPROPID *paProps,int cProps,IAccPropServer *pServer,AnnoScope annoScope) = 0;
    834     virtual HRESULT WINAPI ClearHmenuProps(HMENU hmenu,DWORD idChild,const MSAAPROPID *paProps,int cProps) = 0;
    835     virtual HRESULT WINAPI ComposeHmenuIdentityString(HMENU hmenu,DWORD idChild,BYTE **ppIDString,DWORD *pdwIDStringLen) = 0;
    836     virtual HRESULT WINAPI DecomposeHmenuIdentityString(const BYTE *pIDString,DWORD dwIDStringLen,HMENU *phmenu,DWORD *pidChild) = 0;
    837   };
    838 #else
    839   typedef struct IAccPropServicesVtbl {
    840     BEGIN_INTERFACE
    841       HRESULT (WINAPI *QueryInterface)(IAccPropServices *This,REFIID riid,void **ppvObject);
    842       ULONG (WINAPI *AddRef)(IAccPropServices *This);
    843       ULONG (WINAPI *Release)(IAccPropServices *This);
    844       HRESULT (WINAPI *SetPropValue)(IAccPropServices *This,const BYTE *pIDString,DWORD dwIDStringLen,MSAAPROPID idProp,VARIANT var);
    845       HRESULT (WINAPI *SetPropServer)(IAccPropServices *This,const BYTE *pIDString,DWORD dwIDStringLen,const MSAAPROPID *paProps,int cProps,IAccPropServer *pServer,AnnoScope annoScope);
    846       HRESULT (WINAPI *ClearProps)(IAccPropServices *This,const BYTE *pIDString,DWORD dwIDStringLen,const MSAAPROPID *paProps,int cProps);
    847       HRESULT (WINAPI *SetHwndProp)(IAccPropServices *This,HWND hwnd,DWORD idObject,DWORD idChild,MSAAPROPID idProp,VARIANT var);
    848       HRESULT (WINAPI *SetHwndPropStr)(IAccPropServices *This,HWND hwnd,DWORD idObject,DWORD idChild,MSAAPROPID idProp,LPCWSTR str);
    849       HRESULT (WINAPI *SetHwndPropServer)(IAccPropServices *This,HWND hwnd,DWORD idObject,DWORD idChild,const MSAAPROPID *paProps,int cProps,IAccPropServer *pServer,AnnoScope annoScope);
    850       HRESULT (WINAPI *ClearHwndProps)(IAccPropServices *This,HWND hwnd,DWORD idObject,DWORD idChild,const MSAAPROPID *paProps,int cProps);
    851       HRESULT (WINAPI *ComposeHwndIdentityString)(IAccPropServices *This,HWND hwnd,DWORD idObject,DWORD idChild,BYTE **ppIDString,DWORD *pdwIDStringLen);
    852       HRESULT (WINAPI *DecomposeHwndIdentityString)(IAccPropServices *This,const BYTE *pIDString,DWORD dwIDStringLen,HWND *phwnd,DWORD *pidObject,DWORD *pidChild);
    853       HRESULT (WINAPI *SetHmenuProp)(IAccPropServices *This,HMENU hmenu,DWORD idChild,MSAAPROPID idProp,VARIANT var);
    854       HRESULT (WINAPI *SetHmenuPropStr)(IAccPropServices *This,HMENU hmenu,DWORD idChild,MSAAPROPID idProp,LPCWSTR str);
    855       HRESULT (WINAPI *SetHmenuPropServer)(IAccPropServices *This,HMENU hmenu,DWORD idChild,const MSAAPROPID *paProps,int cProps,IAccPropServer *pServer,AnnoScope annoScope);
    856       HRESULT (WINAPI *ClearHmenuProps)(IAccPropServices *This,HMENU hmenu,DWORD idChild,const MSAAPROPID *paProps,int cProps);
    857       HRESULT (WINAPI *ComposeHmenuIdentityString)(IAccPropServices *This,HMENU hmenu,DWORD idChild,BYTE **ppIDString,DWORD *pdwIDStringLen);
    858       HRESULT (WINAPI *DecomposeHmenuIdentityString)(IAccPropServices *This,const BYTE *pIDString,DWORD dwIDStringLen,HMENU *phmenu,DWORD *pidChild);
    859     END_INTERFACE
    860   } IAccPropServicesVtbl;
    861   struct IAccPropServices {
    862     CONST_VTBL struct IAccPropServicesVtbl *lpVtbl;
    863   };
    864 #ifdef COBJMACROS
    865 #define IAccPropServices_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
    866 #define IAccPropServices_AddRef(This) (This)->lpVtbl->AddRef(This)
    867 #define IAccPropServices_Release(This) (This)->lpVtbl->Release(This)
    868 #define IAccPropServices_SetPropValue(This,pIDString,dwIDStringLen,idProp,var) (This)->lpVtbl->SetPropValue(This,pIDString,dwIDStringLen,idProp,var)
    869 #define IAccPropServices_SetPropServer(This,pIDString,dwIDStringLen,paProps,cProps,pServer,annoScope) (This)->lpVtbl->SetPropServer(This,pIDString,dwIDStringLen,paProps,cProps,pServer,annoScope)
    870 #define IAccPropServices_ClearProps(This,pIDString,dwIDStringLen,paProps,cProps) (This)->lpVtbl->ClearProps(This,pIDString,dwIDStringLen,paProps,cProps)
    871 #define IAccPropServices_SetHwndProp(This,hwnd,idObject,idChild,idProp,var) (This)->lpVtbl->SetHwndProp(This,hwnd,idObject,idChild,idProp,var)
    872 #define IAccPropServices_SetHwndPropStr(This,hwnd,idObject,idChild,idProp,str) (This)->lpVtbl->SetHwndPropStr(This,hwnd,idObject,idChild,idProp,str)
    873 #define IAccPropServices_SetHwndPropServer(This,hwnd,idObject,idChild,paProps,cProps,pServer,annoScope) (This)->lpVtbl->SetHwndPropServer(This,hwnd,idObject,idChild,paProps,cProps,pServer,annoScope)
    874 #define IAccPropServices_ClearHwndProps(This,hwnd,idObject,idChild,paProps,cProps) (This)->lpVtbl->ClearHwndProps(This,hwnd,idObject,idChild,paProps,cProps)
    875 #define IAccPropServices_ComposeHwndIdentityString(This,hwnd,idObject,idChild,ppIDString,pdwIDStringLen) (This)->lpVtbl->ComposeHwndIdentityString(This,hwnd,idObject,idChild,ppIDString,pdwIDStringLen)
    876 #define IAccPropServices_DecomposeHwndIdentityString(This,pIDString,dwIDStringLen,phwnd,pidObject,pidChild) (This)->lpVtbl->DecomposeHwndIdentityString(This,pIDString,dwIDStringLen,phwnd,pidObject,pidChild)
    877 #define IAccPropServices_SetHmenuProp(This,hmenu,idChild,idProp,var) (This)->lpVtbl->SetHmenuProp(This,hmenu,idChild,idProp,var)
    878 #define IAccPropServices_SetHmenuPropStr(This,hmenu,idChild,idProp,str) (This)->lpVtbl->SetHmenuPropStr(This,hmenu,idChild,idProp,str)
    879 #define IAccPropServices_SetHmenuPropServer(This,hmenu,idChild,paProps,cProps,pServer,annoScope) (This)->lpVtbl->SetHmenuPropServer(This,hmenu,idChild,paProps,cProps,pServer,annoScope)
    880 #define IAccPropServices_ClearHmenuProps(This,hmenu,idChild,paProps,cProps) (This)->lpVtbl->ClearHmenuProps(This,hmenu,idChild,paProps,cProps)
    881 #define IAccPropServices_ComposeHmenuIdentityString(This,hmenu,idChild,ppIDString,pdwIDStringLen) (This)->lpVtbl->ComposeHmenuIdentityString(This,hmenu,idChild,ppIDString,pdwIDStringLen)
    882 #define IAccPropServices_DecomposeHmenuIdentityString(This,pIDString,dwIDStringLen,phmenu,pidChild) (This)->lpVtbl->DecomposeHmenuIdentityString(This,pIDString,dwIDStringLen,phmenu,pidChild)
    883 #endif
    884 #endif
    885   HRESULT WINAPI IAccPropServices_SetPropValue_Proxy(IAccPropServices *This,const BYTE *pIDString,DWORD dwIDStringLen,MSAAPROPID idProp,VARIANT var);
    886   void __RPC_STUB IAccPropServices_SetPropValue_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    887   HRESULT WINAPI IAccPropServices_SetPropServer_Proxy(IAccPropServices *This,const BYTE *pIDString,DWORD dwIDStringLen,const MSAAPROPID *paProps,int cProps,IAccPropServer *pServer,AnnoScope annoScope);
    888   void __RPC_STUB IAccPropServices_SetPropServer_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    889   HRESULT WINAPI IAccPropServices_ClearProps_Proxy(IAccPropServices *This,const BYTE *pIDString,DWORD dwIDStringLen,const MSAAPROPID *paProps,int cProps);
    890   void __RPC_STUB IAccPropServices_ClearProps_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    891   HRESULT WINAPI IAccPropServices_SetHwndProp_Proxy(IAccPropServices *This,HWND hwnd,DWORD idObject,DWORD idChild,MSAAPROPID idProp,VARIANT var);
    892   void __RPC_STUB IAccPropServices_SetHwndProp_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    893   HRESULT WINAPI IAccPropServices_SetHwndPropStr_Proxy(IAccPropServices *This,HWND hwnd,DWORD idObject,DWORD idChild,MSAAPROPID idProp,LPCWSTR str);
    894   void __RPC_STUB IAccPropServices_SetHwndPropStr_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    895   HRESULT WINAPI IAccPropServices_SetHwndPropServer_Proxy(IAccPropServices *This,HWND hwnd,DWORD idObject,DWORD idChild,const MSAAPROPID *paProps,int cProps,IAccPropServer *pServer,AnnoScope annoScope);
    896   void __RPC_STUB IAccPropServices_SetHwndPropServer_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    897   HRESULT WINAPI IAccPropServices_ClearHwndProps_Proxy(IAccPropServices *This,HWND hwnd,DWORD idObject,DWORD idChild,const MSAAPROPID *paProps,int cProps);
    898   void __RPC_STUB IAccPropServices_ClearHwndProps_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    899   HRESULT WINAPI IAccPropServices_ComposeHwndIdentityString_Proxy(IAccPropServices *This,HWND hwnd,DWORD idObject,DWORD idChild,BYTE **ppIDString,DWORD *pdwIDStringLen);
    900   void __RPC_STUB IAccPropServices_ComposeHwndIdentityString_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    901   HRESULT WINAPI IAccPropServices_DecomposeHwndIdentityString_Proxy(IAccPropServices *This,const BYTE *pIDString,DWORD dwIDStringLen,HWND *phwnd,DWORD *pidObject,DWORD *pidChild);
    902   void __RPC_STUB IAccPropServices_DecomposeHwndIdentityString_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    903   HRESULT WINAPI IAccPropServices_SetHmenuProp_Proxy(IAccPropServices *This,HMENU hmenu,DWORD idChild,MSAAPROPID idProp,VARIANT var);
    904   void __RPC_STUB IAccPropServices_SetHmenuProp_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    905   HRESULT WINAPI IAccPropServices_SetHmenuPropStr_Proxy(IAccPropServices *This,HMENU hmenu,DWORD idChild,MSAAPROPID idProp,LPCWSTR str);
    906   void __RPC_STUB IAccPropServices_SetHmenuPropStr_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    907   HRESULT WINAPI IAccPropServices_SetHmenuPropServer_Proxy(IAccPropServices *This,HMENU hmenu,DWORD idChild,const MSAAPROPID *paProps,int cProps,IAccPropServer *pServer,AnnoScope annoScope);
    908   void __RPC_STUB IAccPropServices_SetHmenuPropServer_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    909   HRESULT WINAPI IAccPropServices_ClearHmenuProps_Proxy(IAccPropServices *This,HMENU hmenu,DWORD idChild,const MSAAPROPID *paProps,int cProps);
    910   void __RPC_STUB IAccPropServices_ClearHmenuProps_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    911   HRESULT WINAPI IAccPropServices_ComposeHmenuIdentityString_Proxy(IAccPropServices *This,HMENU hmenu,DWORD idChild,BYTE **ppIDString,DWORD *pdwIDStringLen);
    912   void __RPC_STUB IAccPropServices_ComposeHmenuIdentityString_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    913   HRESULT WINAPI IAccPropServices_DecomposeHmenuIdentityString_Proxy(IAccPropServices *This,const BYTE *pIDString,DWORD dwIDStringLen,HMENU *phmenu,DWORD *pidChild);
    914   void __RPC_STUB IAccPropServices_DecomposeHmenuIdentityString_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    915 #endif
    916 
    917   extern RPC_IF_HANDLE __MIDL_itf_oleacc_0119_v0_0_c_ifspec;
    918   extern RPC_IF_HANDLE __MIDL_itf_oleacc_0119_v0_0_s_ifspec;
    919 #ifndef __Accessibility_LIBRARY_DEFINED__
    920 #define __Accessibility_LIBRARY_DEFINED__
    921   EXTERN_C const IID LIBID_Accessibility;
    922   EXTERN_C const CLSID CLSID_CAccPropServices;
    923 #ifdef __cplusplus
    924   class CAccPropServices;
    925 #endif
    926 #endif
    927 
    928   ULONG __RPC_API BSTR_UserSize(ULONG *,ULONG,BSTR *);
    929   unsigned char *__RPC_API BSTR_UserMarshal(ULONG *,unsigned char *,BSTR *);
    930   unsigned char *__RPC_API BSTR_UserUnmarshal(ULONG *,unsigned char *,BSTR *);
    931   void __RPC_API BSTR_UserFree(ULONG *,BSTR *);
    932   ULONG __RPC_API HMENU_UserSize(ULONG *,ULONG,HMENU *);
    933   unsigned char *__RPC_API HMENU_UserMarshal(ULONG *,unsigned char *,HMENU *);
    934   unsigned char *__RPC_API HMENU_UserUnmarshal(ULONG *,unsigned char *,HMENU *);
    935   void __RPC_API HMENU_UserFree(ULONG *,HMENU *);
    936   ULONG __RPC_API HWND_UserSize(ULONG *,ULONG,HWND *);
    937   unsigned char *__RPC_API HWND_UserMarshal(ULONG *,unsigned char *,HWND *);
    938   unsigned char *__RPC_API HWND_UserUnmarshal(ULONG *,unsigned char *,HWND *);
    939   void __RPC_API HWND_UserFree(ULONG *,HWND *);
    940   ULONG __RPC_API VARIANT_UserSize(ULONG *,ULONG,VARIANT *);
    941   unsigned char *__RPC_API VARIANT_UserMarshal(ULONG *,unsigned char *,VARIANT *);
    942   unsigned char *__RPC_API VARIANT_UserUnmarshal(ULONG *,unsigned char *,VARIANT *);
    943   void __RPC_API VARIANT_UserFree(ULONG *,VARIANT *);
    944 /* Begin additional prototypes for all interfaces */
    945 
    946 
    947 /* End additional prototypes */
    948 
    949 #ifdef __cplusplus
    950 }
    951 #endif
    952 
    953 #endif /* __oleacc_h__ */