19#ifndef __DINPUTD_INCLUDED__
20#define __DINPUTD_INCLUDED__
22#define COM_NO_WINDOWS_H
25#ifndef DIRECTINPUT_VERSION
26#define DIRECTINPUT_VERSION 0x0800
29DEFINE_GUID(IID_IDirectInputJoyConfig8, 0xEB0D7DFA,0x1990,0x4F27,0xB4,0xD6,0xED,0xF2,0xEE,0xC4,0xA4,0x4C);
36#define MAX_JOYSTRING 256
37#ifndef MAX_JOYSTICKOEMVXDNAME
38#define MAX_JOYSTICKOEMVXDNAME 260
41#define JOY_POV_NUMDIRS 4
42#define JOY_POVVAL_FORWARD 0
43#define JOY_POVVAL_BACKWARD 1
44#define JOY_POVVAL_LEFT 2
45#define JOY_POVVAL_RIGHT 3
47#define DIERR_NOMOREITEMS MAKE_HRESULT(SEVERITY_ERROR, FACILITY_WIN32, ERROR_NO_MORE_ITEMS)
130#define DIJC_GUIDINSTANCE 0x00000001
131#define DIJC_REGHWCONFIGTYPE 0x00000002
132#define DIJC_GAIN 0x00000004
133#define DIJC_CALLOUT 0x00000008
134#define DIJC_WDMGAMEPORT 0x00000010
172#define INTERFACE IDirectInputJoyConfig8
199#if !defined(__cplusplus) || defined(CINTERFACE)
201#define IDirectInputJoyConfig8_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
202#define IDirectInputJoyConfig8_AddRef(p) (p)->lpVtbl->AddRef(p)
203#define IDirectInputJoyConfig8_Release(p) (p)->lpVtbl->Release(p)
205#define IDirectInputJoyConfig8_Acquire(p) (p)->lpVtbl->Acquire(p)
206#define IDirectInputJoyConfig8_Unacquire(p) (p)->lpVtbl->Unacquire(p)
207#define IDirectInputJoyConfig8_SetCooperativeLevel(p,a,b) (p)->lpVtbl->SetCooperativeLevel(p,a,b)
208#define IDirectInputJoyConfig8_SendNotify(p) (p)->lpVtbl->SendNotify(p)
209#define IDirectInputJoyConfig8_EnumTypes(p,a,b) (p)->lpVtbl->EnumTypes(p,a,b)
210#define IDirectInputJoyConfig8_GetTypeInfo(p,a,b,c) (p)->lpVtbl->GetTypeInfo(p,a,b,c)
211#define IDirectInputJoyConfig8_SetTypeInfo(p,a,b,c,d) (p)->lpVtbl->SetTypeInfo(p,a,b,c,d)
212#define IDirectInputJoyConfig8_DeleteType(p,a) (p)->lpVtbl->DeleteType(p,a)
213#define IDirectInputJoyConfig8_GetConfig(p,a,b,c) (p)->lpVtbl->GetConfig(p,a,b,c)
214#define IDirectInputJoyConfig8_SetConfig(p,a,b,c) (p)->lpVtbl->SetConfig(p,a,b,c)
215#define IDirectInputJoyConfig8_DeleteConfig(p,a) (p)->lpVtbl->DeleteConfig(p,a)
216#define IDirectInputJoyConfig8_GetUserValues(p,a,b) (p)->lpVtbl->GetUserValues(p,a,b)
217#define IDirectInputJoyConfig8_SetUserValues(p,a,b) (p)->lpVtbl->SetUserValues(p,a,b)
218#define IDirectInputJoyConfig8_AddNewHardware(p,a,b) (p)->lpVtbl->AddNewHardware(p,a,b)
219#define IDirectInputJoyConfig8_OpenTypeKey(p,a,b,c) (p)->lpVtbl->OpenTypeKey(p,a,b,c)
220#define IDirectInputJoyConfig8_OpenAppStatusKey(p,a) (p)->lpVtbl->OpenAppStatusKey(p,a)
223#define IDirectInputJoyConfig8_QueryInterface(p,a,b) (p)->QueryInterface(a,b)
224#define IDirectInputJoyConfig8_AddRef(p) (p)->AddRef()
225#define IDirectInputJoyConfig8_Release(p) (p)->Release()
227#define IDirectInputJoyConfig8_Acquire(p) (p)->Acquire()
228#define IDirectInputJoyConfig8_Unacquire(p) (p)->Unacquire()
229#define IDirectInputJoyConfig8_SetCooperativeLevel(p,a,b) (p)->SetCooperativeLevel(a,b)
230#define IDirectInputJoyConfig8_SendNotify(p) (p)->SendNotify()
231#define IDirectInputJoyConfig8_EnumTypes(p,a,b) (p)->EnumTypes(a,b)
232#define IDirectInputJoyConfig8_GetTypeInfo(p,a,b,c) (p)->GetTypeInfo(a,b,c)
233#define IDirectInputJoyConfig8_SetTypeInfo(p,a,b,c,d) (p)->SetTypeInfo(a,b,c,d)
234#define IDirectInputJoyConfig8_DeleteType(p,a) (p)->DeleteType(a)
235#define IDirectInputJoyConfig8_GetConfig(p,a,b,c) (p)->GetConfig(a,b,c)
236#define IDirectInputJoyConfig8_SetConfig(p,a,b,c) (p)->SetConfig(a,b,c)
237#define IDirectInputJoyConfig8_DeleteConfig(p,a) (p)->DeleteConfig(a)
238#define IDirectInputJoyConfig8_GetUserValues(p,a,b) (p)->GetUserValues(a,b)
239#define IDirectInputJoyConfig8_SetUserValues(p,a,b) (p)->SetUserValues(a,b)
240#define IDirectInputJoyConfig8_AddNewHardware(p,a,b) (p)->AddNewHardware(a,b)
241#define IDirectInputJoyConfig8_OpenTypeKey(p,a,b,c) (p)->OpenTypeKey(a,b,c)
242#define IDirectInputJoyConfig8_OpenAppStatusKey(p,a) (p)->OpenAppStatusKey(a)
BOOL SetConfig(LPCTSTR *ServiceArgs, INT ArgCount)
#define DECLARE_INTERFACE_(i, b)
static HRESULT QueryInterface(REFIID, void **)
static ULONG WINAPI AddRef(IStream *iface)
#define DEFINE_GUID(name, l, w1, w2, b1, b2, b3, b4, b5, b6, b7, b8)
WCHAR wszType[MAX_JOYSTRING]
WCHAR wszCallout[MAX_JOYSTRING]
WCHAR wszType[MAX_JOYSTRING]
WCHAR wszCallout[MAX_JOYSTRING]
WCHAR wszCallout[MAX_JOYSTICKOEMVXDNAME]
WCHAR wszDisplayName[MAX_JOYSTRING]
WCHAR wszHardwareId[MAX_JOYSTRING]
WCHAR wszCallout[MAX_JOYSTICKOEMVXDNAME]
WCHAR wszDisplayName[MAX_JOYSTRING]
WCHAR wszCallout[MAX_JOYSTICKOEMVXDNAME]
WCHAR wszDisplayName[MAX_JOYSTRING]
WCHAR wszMapFile[MAX_JOYSTRING]
WCHAR wszHardwareId[MAX_JOYSTRING]
WCHAR wszGameportEmulator[MAX_JOYSTRING]
WCHAR wszGlobalDriver[MAX_JOYSTRING]
DWORD dwPOVValues[JOY_POV_NUMDIRS]
static LRESULT SendNotify(TreeListData *pData, NMHDR *pNotify)
_In_ void _In_ PCCERT_CONTEXT _In_opt_ LPFILETIME _In_ DWORD _In_ DWORD _Outptr_opt_ void ** ppvObject