IDirectInputDevice::SetDataFormat

The IDirectInputDevice::SetDataFormat method sets the data format for the DirectInput device.

HRESULT SetDataFormat(

LPCDIDATAFORMAT lpdf

);

Parameters

lpdf

Address of a structure that describes the format of the data the DirectInputDevice should return. An application can define its own DIDATAFORMAT structure or use one of the following predefined global variables:

·c_dfDIKeyboard

·c_dfDIMouse

·c_dfDIJoystick

·c_dfDIJoystick2

Return Values

If the method succeeds, the return value is DI_OK.

If the method fails, the return value may be one of the following error values:

DIERR_ACQUIRED
DIERR_INVALIDPARAM
DIERR_NOTINITIALIZED

Remarks

The data format must be set before the device can be acquired by using the IDirectInputDevice::Acquire method. It is necessary to set the data format only once. The data format cannot be changed while the device is acquired.

QuickInfo

  Windows NT: Use version 5.0 or later.
  Windows: Use Windows 95 OSR2 or later. Available as a redistributable for Windows 95.
  Windows CE: Unsupported.
  Header: Declared in dinput.h.
  Import Library: Use dinput.lib.

See Also

IDirectInputDevice::GetDeviceState