MCI_GETDEVCAPS

Used to obtain static information about a device. All devices must respond to this message. The parameters and flags available for this message depend on the selected device. Information is returned in the dwReturn member of the structure identified by lpCapsParms.

DWORD lParam1

The following standard and command-specific flags apply to all devices:

MCI_NOTIFY

Specifies that MCI should post the MM_MCINOTIFY message when this command completes. The window to receive this message is specified in the dwCallback member of the structure identified by lpCapsParms.

MCI_WAIT

Specifies that the query operation should finish before MCI returns control to the application.

MCI_GETDEVCAPS_ITEM

Specifies that the dwItem member of the structure identified by lpCapsParms contains a constant specifying which device capability to obtain. The following constants define which capability to return in the dwReturn member of the structure:

MCI_GETDEVCAPS_CAN_EJECT

The dwReturn member is set to TRUE if the device can eject the media; otherwise, it is set to FALSE.

MCI_GETDEVCAPS_CAN_PLAY

The dwReturn member is set to TRUE if the device can play the media; otherwise, it is set to FALSE. <pIf a device specifies TRUE, it implies the device supports MCI_PAUSE and MCI_STOP as well as MCI_PLAY.

MCI_GETDEVCAPS_CAN_RECORD

The dwReturn member is set to TRUE if the device supports recording; otherwise, it is set to FALSE.

If a device specifies TRUE, it implies the device supports MCI_PAUSE and MCI_STOP as well as MCI_RECORD.

MCI_GETDEVCAPS_CAN_SAVE

The dwReturn member is set to TRUE if the device can save a file; otherwise, it is set to FALSE.

MCI_GETDEVCAPS_COMPOUND_DEVICE

The dwReturn member is set to TRUE if the device uses device elements; otherwise, it is set to FALSE.

MCI_GETDEVCAPS_DEVICE_TYPE

The dwReturn member is set to one of the following values indicating the device type:


MCI_DEVTYPE_ANIMATION

MCI_DEVTYPE_CD_AUDIO

MCI_DEVTYPE_DAT

MCI_DEVTYPE_DIGITAL_VIDEO

MCI_DEVTYPE_OTHER

MCI_DEVTYPE_OVERLAY

MCI_DEVTYPE_SCANNER

MCI_DEVTYPE_SEQUENCER

MCI_DEVTYPE_VIDEODISC

MCI_DEVTYPE_VIDEOTAPE

MCI_DEVTYPE_WAVEFORM_AUDIO


MCI_GETDEVCAPS_HAS_AUDIO

The dwReturn member is set to TRUE if the device has audio output; otherwise, it is set to FALSE.

MCI_GETDEVCAPS_HAS_VIDEO

The dwReturn member is set to TRUE if the device has video output; otherwise, it is set to FALSE. <pFor example, the member is set to TRUE for devices that support the animation or videodisc command set.

MCI_GETDEVCAPS_USES_FILES

The dwReturn member is set to TRUE if the device requires a filename as its element name; otherwise, it is set to FALSE.

Only compound devices use files.


LPMCI_GETDEVCAPS_PARMS lParam2

Specifies a far pointer to the MCI_GETDEVCAPS_PARMS structure. (Devices with extended command sets might replace this structure with a device-specific structure.)

Animation Extensions

The following extensions for lParam1apply to animation devices:

MCI_GETDEVCAPS_ITEM

Specifies that the dwItem member of the structure identified by lParam2 contains a constant specifying which device capability to obtain. The following additional device-capability constants are defined for animation devices and specify which value to return in the dwReturn member of the structure:

MCI_ANIM_GETDEVCAPS_CAN_REVERSE

The dwReturn member is set to TRUE if the device can play in reverse; otherwise, it is set to FALSE.

MCI_ANIM_GETDEVCAPS_CAN_STRETCH

The dwReturn member is set to TRUE if the device can stretch the image to fill the frame; otherwise, it is set to FALSE.

MCI_ANIM_GETDEVCAPS_FAST_RATE

The dwReturn member is set to the standard fast play rate in frames per second.

MCI_ANIM_GETDEVCAPS_MAX_WINDOWS

The dwReturn member is set to the maximum number of windows that the device can handle simultaneously.

MCI_ANIM_GETDEVCAPS_NORMAL_RATE

The dwReturn member is set to the normal rate of play in frames per second.

MCI_ANIM_GETDEVCAPS_PALETTES

The dwReturn member is set to TRUE if the device can return a palette handle; otherwise, it is set to FALSE.

MCI_ANIM_GETDEVCAPS_SLOW_RATE

The dwReturn member is set to the standard slow play rate in frames per second.


Note that lParam2 specifies a far pointer to the MCI_GETDEVCAPS_PARMS structure.

Videodisc Extensions

The following extensions for lParam1apply to videodisc devices:

MCI_GETDEVCAPS_ITEM

Specifies that the dwItem member of the structure identified by lParam2 contains a constant specifying which device capability to obtain. The following additional device-capability constants are defined for videodisc devices and specify which value to return in the dwReturn member of the structure:

MCI_VD_GETDEVCAPS_CAN_REVERSE

The dwReturn member is set to TRUE if the videodisc player can play in reverse; otherwise, it is set to FALSE.

Some players can play CLV discs in reverse as well as CAV discs.

MCI_VD_GETDEVCAPS_FAST_RATE

The dwReturn member is set to the standard fast play rate in frames per second.

MCI_VD_GETDEVCAPS_NORMAL_RATE

The dwReturn member is set to the normal play rate in frames per second.

MCI_VD_GETDEVCAPS_SLOW_RATE

The dwReturn member is set to the slow play rate in frames per second.

MCI_VD_GETDEVCAPS_CLV

Indicates the information requested applies to CLV format discs. By default, the capabilities apply to the current disc.

MCI_VD_GETDEVCAPS_CAV

Indicates the information requested applies to CAV format discs. By default, the capabilities apply to the current disc.


Note that lParam2 specifies a far pointer to the MCI_GETDEVCAPS_PARMS structure.

Video Overlay Extensions

The following extensions for lParam1 apply to video overlay devices:

MCI_GETDEVCAPS_ITEM

Specifies that the dwItem member of the structure identified by lParam2 contains a constant specifying which device capability to obtain. The following additional device-capability constants are defined for video overlay devices and specify which value to return in the dwReturn member of the structure:

MCI_OVLY_GETDEVCAPS_CAN_FREEZE

The dwReturn member is set to TRUE if the device can freeze the image; otherwise, it is set to FALSE.

MCI_OVLY_GETDEVCAPS_CAN_STRETCH

The dwReturn member is set to TRUE if the device can stretch the image to fill the frame; otherwise, it is set to FALSE.

MCI_OVLY_GETDEVCAPS_MAX_WINDOWS

The dwReturn member is set to the maximum number of windows that the device can handle simultaneously.


Note that lParam2 specifies a far pointer to the MCI_GETDEVCAPS_PARMS structure.

Waveform Audio Extensions

The following extended flag for lParam1 applies to waveform audio devices:

MCI_GETDEVCAPS_ITEM

Specifies that the dwItem member of the structure identified by lParam2 contains a constant specifying which device capability to obtain. The following additional device-capability constants are defined for waveform audio devices and specify which value to return in the dwReturn member of the structure:

MCI_WAVE_GETDEVCAPS_INPUT

The dwReturn member is set to the total number of waveform input (recording) devices.

MCI_WAVE_GETDEVCAPS_OUTPUT

The dwReturn member is set to the total number of waveform output (playback) devices.


Note that lParam2 specifies a far pointer to the MCI_GETDEVCAPS_PARMS structure.