📄 directinput.pas
字号:
PDIObjectDataFormat = ^TDIObjectDataFormat;
_DIOBJECTDATAFORMAT = packed record
pguid: PGUID;
dwOfs: DWORD;
dwType: DWORD;
dwFlags: DWORD;
end;
{$EXTERNALSYM _DIOBJECTDATAFORMAT}
DIOBJECTDATAFORMAT = _DIOBJECTDATAFORMAT;
{$EXTERNALSYM DIOBJECTDATAFORMAT}
TDIObjectDataFormat = _DIOBJECTDATAFORMAT;
PDIDataFormat = ^TDIDataFormat;
_DIDATAFORMAT = packed record
dwSize: DWORD;
dwObjSize: DWORD;
dwFlags: DWORD;
dwDataSize: DWORD;
dwNumObjs: DWORD;
rgodf: PDIObjectDataFormat;
end;
{$EXTERNALSYM _DIDATAFORMAT}
DIDATAFORMAT = _DIDATAFORMAT;
{$EXTERNALSYM DIDATAFORMAT}
TDIDataFormat = _DIDATAFORMAT;
const
DIDF_ABSAXIS = $00000001;
{$EXTERNALSYM DIDF_ABSAXIS}
DIDF_RELAXIS = $00000002;
{$EXTERNALSYM DIDF_RELAXIS}
{$IFDEF DIRECTINPUT_VERSION_8} (* #if(DIRECTINPUT_VERSION > 0x0700) *)
type
PDIActionA = ^TDIActionA;
PDIActionW = ^TDIActionW;
PDIAction = PDIActionA;
_DIACTIONA = packed record
uAppData: Pointer;
dwSemantic: DWORD;
dwFlags: DWORD;
case Byte of
0: (
lptszActionName: PAnsiChar;
guidInstance: TGUID;
dwObjID: DWORD;
dwHow: DWORD;
);
1: (
uResIdString: LongWord;
);
end;
{$EXTERNALSYM _DIACTIONA}
_DIACTIONW = packed record
uAppData: Pointer;
dwSemantic: DWORD;
dwFlags: DWORD;
case Byte of
0: (
lptszActionName: PWideChar;
guidInstance: TGUID;
dwObjID: DWORD;
dwHow: DWORD;
);
1: (
uResIdString: LongWord;
);
end;
{$EXTERNALSYM _DIACTIONW}
_DIACTION = _DIACTIONA;
{$EXTERNALSYM _DIACTION}
DIACTIONA = _DIACTIONA;
{$EXTERNALSYM DIACTIONA}
DIACTIONW = _DIACTIONW;
{$EXTERNALSYM DIACTIONW}
DIACTION = DIACTIONA;
{$EXTERNALSYM DIACTION}
TDIActionA = _DIACTIONA;
TDIActionW = _DIACTIONW;
TDIAction = TDIActionA;
const
DIA_FORCEFEEDBACK = $00000001;
{$EXTERNALSYM DIA_FORCEFEEDBACK}
DIA_APPMAPPED = $00000002;
{$EXTERNALSYM DIA_APPMAPPED}
DIA_APPNOMAP = $00000004;
{$EXTERNALSYM DIA_APPNOMAP}
DIA_NORANGE = $00000008;
{$EXTERNALSYM DIA_NORANGE}
DIA_APPFIXED = $00000010;
{$EXTERNALSYM DIA_APPFIXED}
DIAH_UNMAPPED = $00000000;
{$EXTERNALSYM DIAH_UNMAPPED}
DIAH_USERCONFIG = $00000001;
{$EXTERNALSYM DIAH_USERCONFIG}
DIAH_APPREQUESTED = $00000002;
{$EXTERNALSYM DIAH_APPREQUESTED}
DIAH_HWAPP = $00000004;
{$EXTERNALSYM DIAH_HWAPP}
DIAH_HWDEFAULT = $00000008;
{$EXTERNALSYM DIAH_HWDEFAULT}
DIAH_DEFAULT = $00000020;
{$EXTERNALSYM DIAH_DEFAULT}
DIAH_ERROR = $80000000;
{$EXTERNALSYM DIAH_ERROR}
type
PDIActionFormatA = ^TDIActionFormatA;
PDIActionFormatW = ^TDIActionFormatW;
PDIActionFormat = PDIActionFormatA;
_DIACTIONFORMATA = packed record
dwSize : DWORD;
dwActionSize : DWORD;
dwDataSize : DWORD;
dwNumActions : DWORD;
rgoAction : PDIActionA;
guidActionMap : TGUID;
dwGenre : DWORD;
dwBufferSize : DWORD;
lAxisMin : Longint;
lAxisMax : Longint;
hInstString : THandle;
ftTimeStamp : TFileTime;
dwCRC : DWORD;
tszActionMap : array [0..MAX_PATH-1] of AnsiChar;
end;
{$EXTERNALSYM _DIACTIONFORMATA}
_DIACTIONFORMATW = packed record
dwSize : DWORD;
dwActionSize : DWORD;
dwDataSize : DWORD;
dwNumActions : DWORD;
rgoAction : PDIActionW;
guidActionMap : TGUID;
dwGenre : DWORD;
dwBufferSize : DWORD;
lAxisMin : Longint;
lAxisMax : Longint;
hInstString : THandle;
ftTimeStamp : TFileTime;
dwCRC : DWORD;
tszActionMap : array [0..MAX_PATH-1] of WideChar;
end;
{$EXTERNALSYM _DIACTIONFORMATW}
_DIACTIONFORMAT = _DIACTIONFORMATA;
{$EXTERNALSYM _DIACTIONFORMAT}
DIACTIONFORMATA = _DIACTIONFORMATA;
{$EXTERNALSYM DIACTIONFORMATA}
DIACTIONFORMATW = _DIACTIONFORMATW;
{$EXTERNALSYM DIACTIONFORMATW}
DIACTIONFORMAT = DIACTIONFORMATA;
{$EXTERNALSYM DIACTIONFORMAT}
TDIActionFormatA = _DIACTIONFORMATA;
TDIActionFormatW = _DIACTIONFORMATW;
TDIActionFormat = TDIActionFormatA;
const
DIAFTS_NEWDEVICELOW = $FFFFFFFF;
{$EXTERNALSYM DIAFTS_NEWDEVICELOW}
DIAFTS_NEWDEVICEHIGH = $FFFFFFFF;
{$EXTERNALSYM DIAFTS_NEWDEVICEHIGH}
DIAFTS_UNUSEDDEVICELOW = $00000000;
{$EXTERNALSYM DIAFTS_UNUSEDDEVICELOW}
DIAFTS_UNUSEDDEVICEHIGH = $00000000;
{$EXTERNALSYM DIAFTS_UNUSEDDEVICEHIGH}
DIDBAM_DEFAULT = $00000000;
{$EXTERNALSYM DIDBAM_DEFAULT}
DIDBAM_PRESERVE = $00000001;
{$EXTERNALSYM DIDBAM_PRESERVE}
DIDBAM_INITIALIZE = $00000002;
{$EXTERNALSYM DIDBAM_INITIALIZE}
DIDBAM_HWDEFAULTS = $00000004;
{$EXTERNALSYM DIDBAM_HWDEFAULTS}
DIDSAM_DEFAULT = $00000000;
{$EXTERNALSYM DIDSAM_DEFAULT}
DIDSAM_NOUSER = $00000001;
{$EXTERNALSYM DIDSAM_NOUSER}
DIDSAM_FORCESAVE = $00000002;
{$EXTERNALSYM DIDSAM_FORCESAVE}
DICD_DEFAULT = $00000000;
{$EXTERNALSYM DICD_DEFAULT}
DICD_EDIT = $00000001;
{$EXTERNALSYM DICD_EDIT}
(*
* The following definition is normally defined in d3dtypes.h
*)
type
D3DCOLOR = DXTypes.D3DCOLOR;
{$EXTERNALSYM D3DCOLOR}
TD3DColor = DXTypes.TD3DColor;
PD3DColor = DXTypes.PD3DColor;
PDIColorSet = ^TDIColorSet;
_DICOLORSET = packed record
dwSize: DWORD;
cTextFore: TD3DColor;
cTextHighlight: TD3DColor;
cCalloutLine: TD3DColor;
cCalloutHighlight: TD3DColor;
cBorder: TD3DColor;
cControlFill: TD3DColor;
cHighlightFill: TD3DColor;
cAreaFill: TD3DColor;
end;
{$EXTERNALSYM _DICOLORSET}
DICOLORSET = _DICOLORSET;
{$EXTERNALSYM DICOLORSET}
TDIColorSet = _DICOLORSET;
PDIConfigureDevicesParamsA = ^TDIConfigureDevicesParamsA;
PDIConfigureDevicesParamsW = ^TDIConfigureDevicesParamsW;
PDIConfigureDevicesParams = PDIConfigureDevicesParamsA;
_DICONFIGUREDEVICESPARAMSA = packed record
dwSize: DWORD;
dwcUsers: DWORD;
lptszUserNames: PAnsiChar;
dwcFormats: DWORD;
lprgFormats: PDIActionFormatA;
hwnd: HWND;
dics: TDIColorSet;
lpUnkDDSTarget: IUnknown;
end;
{$EXTERNALSYM _DICONFIGUREDEVICESPARAMSA}
_DICONFIGUREDEVICESPARAMSW = packed record
dwSize: DWORD;
dwcUsers: DWORD;
lptszUserNames: PWideChar;
dwcFormats: DWORD;
lprgFormats: PDIActionFormatW;
hwnd: HWND;
dics: TDIColorSet;
lpUnkDDSTarget: IUnknown;
end;
{$EXTERNALSYM _DICONFIGUREDEVICESPARAMSW}
_DICONFIGUREDEVICESPARAMS = _DICONFIGUREDEVICESPARAMSA;
{$EXTERNALSYM _DICONFIGUREDEVICESPARAMS}
DICONFIGUREDEVICESPARAMSA = _DICONFIGUREDEVICESPARAMSA;
{$EXTERNALSYM DICONFIGUREDEVICESPARAMSA}
DICONFIGUREDEVICESPARAMSW = _DICONFIGUREDEVICESPARAMSW;
{$EXTERNALSYM DICONFIGUREDEVICESPARAMSW}
DICONFIGUREDEVICESPARAMS = DICONFIGUREDEVICESPARAMSA;
{$EXTERNALSYM DICONFIGUREDEVICESPARAMS}
TDIConfigureDevicesParamsA = _DICONFIGUREDEVICESPARAMSA;
TDIConfigureDevicesParamsW = _DICONFIGUREDEVICESPARAMSW;
TDIConfigureDevicesParams = TDIConfigureDevicesParamsA;
const
DIDIFT_CONFIGURATION = $00000001;
{$EXTERNALSYM DIDIFT_CONFIGURATION}
DIDIFT_OVERLAY = $00000002;
{$EXTERNALSYM DIDIFT_OVERLAY}
DIDAL_CENTERED = $00000000;
{$EXTERNALSYM DIDAL_CENTERED}
DIDAL_LEFTALIGNED = $00000001;
{$EXTERNALSYM DIDAL_LEFTALIGNED}
DIDAL_RIGHTALIGNED = $00000002;
{$EXTERNALSYM DIDAL_RIGHTALIGNED}
DIDAL_MIDDLE = $00000000;
{$EXTERNALSYM DIDAL_MIDDLE}
DIDAL_TOPALIGNED = $00000004;
{$EXTERNALSYM DIDAL_TOPALIGNED}
DIDAL_BOTTOMALIGNED = $00000008;
{$EXTERNALSYM DIDAL_BOTTOMALIGNED}
type
PDIDeviceImageInfoA = ^TDIDeviceImageInfoA;
PDIDeviceImageInfoW = ^TDIDeviceImageInfoW;
PDIDeviceImageInfo = PDIDeviceImageInfoA;
_DIDEVICEIMAGEINFOA = packed record
tszImagePath: array [0..MAX_PATH-1] of AnsiChar;
dwFlags: DWORD;
// These are valid if DIDIFT_OVERLAY is present in dwFlags.
dwViewID: DWORD;
rcOverlay: TRect;
dwObjID: DWORD;
dwcValidPts: DWORD;
rgptCalloutLine: array [0..4] of TPoint;
rcCalloutRect: TRect;
dwTextAlign: DWORD;
end;
{$EXTERNALSYM _DIDEVICEIMAGEINFOA}
_DIDEVICEIMAGEINFOW = packed record
tszImagePath: array [0..MAX_PATH-1] of WideChar;
dwFlags: DWORD;
// These are valid if DIDIFT_OVERLAY is present in dwFlags.
dwViewID: DWORD;
rcOverlay: TRect;
dwObjID: DWORD;
dwcValidPts: DWORD;
rgptCalloutLine: array [0..4] of TPoint;
rcCalloutRect: TRect;
dwTextAlign: DWORD;
end;
{$EXTERNALSYM _DIDEVICEIMAGEINFOW}
_DIDEVICEIMAGEINFO = _DIDEVICEIMAGEINFOA;
{$EXTERNALSYM _DIDEVICEIMAGEINFO}
DIDEVICEIMAGEINFOA = _DIDEVICEIMAGEINFOA;
{$EXTERNALSYM DIDEVICEIMAGEINFOA}
DIDEVICEIMAGEINFOW = _DIDEVICEIMAGEINFOW;
{$EXTERNALSYM DIDEVICEIMAGEINFOW}
DIDEVICEIMAGEINFO = DIDEVICEIMAGEINFOA;
{$EXTERNALSYM DIDEVICEIMAGEINFO}
TDIDeviceImageInfoA = _DIDEVICEIMAGEINFOA;
TDIDeviceImageInfoW = _DIDEVICEIMAGEINFOW;
TDIDeviceImageInfo = TDIDeviceImageInfoA;
PDIDeviceImageInfoHeaderA = ^TDIDeviceImageInfoHeaderA;
PDIDeviceImageInfoHeaderW = ^TDIDeviceImageInfoHeaderW;
PDIDeviceImageInfoHeader = PDIDeviceImageInfoHeaderA;
_DIDEVICEIMAGEINFOHEADERA = packed record
dwSize: DWORD;
dwSizeImageInfo: DWORD;
dwcViews: DWORD;
dwcButtons: DWORD;
dwcAxes: DWORD;
dwcPOVs: DWORD;
dwBufferSize: DWORD;
dwBufferUsed: DWORD;
lprgImageInfoArray: PDIDeviceImageInfoA;
end;
{$EXTERNALSYM _DIDEVICEIMAGEINFOHEADERA}
_DIDEVICEIMAGEINFOHEADERW = packed record
dwSize: DWORD;
dwSizeImageInfo: DWORD;
dwcViews: DWORD;
dwcButtons: DWORD;
dwcAxes: DWORD;
dwcPOVs: DWORD;
dwBufferSize: DWORD;
dwBufferUsed: DWORD;
lprgImageInfoArray: PDIDeviceImageInfoW;
end;
{$EXTERNALSYM _DIDEVICEIMAGEINFOHEADERW}
_DIDEVICEIMAGEINFOHEADER = _DIDEVICEIMAGEINFOHEADERA;
{$EXTERNALSYM _DIDEVICEIMAGEINFOHEADER}
DIDEVICEIMAGEINFOHEADERA = _DIDEVICEIMAGEINFOHEADERA;
{$EXTERNALSYM _DIDEVICEIMAGEINFOHEADERA}
DIDEVICEIMAGEINFOHEADERW = _DIDEVICEIMAGEINFOHEADERW;
{$EXTERNALSYM _DIDEVICEIMAGEINFOHEADERW}
DIDEVICEIMAGEINFOHEADER = DIDEVICEIMAGEINFOHEADERA;
{$EXTERNALSYM _DIDEVICEIMAGEINFOHEADER}
TDIDeviceImageInfoHeaderA = _DIDEVICEIMAGEINFOHEADERA;
TDIDeviceImageInfoHeaderW = _DIDEVICEIMAGEINFOHEADERW;
TDIDeviceImageInfoHeader = TDIDeviceImageInfoHeaderA;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -