Platform SDK: Files and I/O

MODEMSETTINGS

The MODEMSETTINGS structure contains information about a modem's configuration.

typedef struct modemsettings_tag {
  DWORD dwActualSize;            // size of returned data 
  DWORD dwRequiredSize;          // structure size 
  DWORD dwDevSpecificOffset;     // offset of data
  DWORD dwDevSpecificSize;       // size of defined data

  // Static local options (read/write)
  DWORD dwCallSetupFailTimer;      // call setup timeout
  DWORD dwInactivityTimeout;       // timeout
  DWORD dwSpeakerVolume;           // speaker volume level
  DWORD dwSpeakerMode;             // speaker mode
  DWORD dwPreferredModemOptions;   // preferred options

  // Negotiated options (read) for current or last call
  DWORD dwNegotiatedModemOptions;  // options
  DWORD dwNegotiatedDCERate;       // DCE rate

  // Variable portion for proprietary expansion
  BYTE  abVariablePortion[1];      // variable-length data
} MODEMSETTINGS, *PMODEMSETTINGS, *LPMODEMSETTINGS;

Members

dwActualSize
Specifies the size, in bytes, of the data actually returned to the application. This member may be less than the dwRequiredSize member if an application did not allocate enough space for the variable-length portion of the structure.
dwRequiredSize
Specifies the number of bytes required for the entire MODEMDEVCAPS structure, including the variable-length portion.
dwDevSpecificOffset
Specifies the offset of the provider-defined portion of the structure, in bytes relative to the beginning of the structure.
dwDevSpecificSize
Specifies the size of the provider-defined portion of the structure, in bytes.
dwCallSetupFailTimer
Specifies the maximum number of seconds the modem should wait, after dialing is completed, for an indication that a modem-to-modem connection has been established. If a connection is not established in this interval, the call is assumed to have failed. This member is equivalent to register S7 in Hayes® compatible modems.
dwInactivityTimeout
Specifies the maximum number of seconds of inactivity allowed after a connection is established. If no data is either transmitted or received for this period of time, the call is automatically terminated. This time-out is used to avoid excessive long-distance charges or online service charges if an application unexpectedly locks up or the user leaves.
dwSpeakerVolume
Specifies the volume level of the monitor speaker when the speaker is on. This member can be one of the following values.
Value Meaning
MDMVOL_LOW Low volume.
MDMVOL_MEDIUM Medium volume.
MDMVOL_HIGH High volume.

The MODEMDEVCAPS structure specifies the speaker volumes a modem supports. Actual volumes are hardware-specific.

dwSpeakerMode
Specifies when the speaker should be on. This member can be one of the following values.
Value Meaning
MDMSPKR_OFF The speaker is always off.
MDMSPKR_CALLSETUP The speaker is on until a connection is established.
MDMSPKR_ON The speaker is always on.
MDMSPKR_DIAL The speaker is on until a connection is established, except that it is off while the modem is actually dialing.

dwPreferredModemOptions
Specifies the modem options requested by the application. The local and remote modems negotiate modem options during call setup; this member specifies the initial negotiating position of the local modem.

The dwModemOptions member of the MODEMDEVCAPS structure specifies the modem options supported by the local modem. For a list of modem options, see the description of the MODEMDEVCAPS structure.

dwNegotiatedModemOptions
Specifies the modem options that are actually in effect. This member is filled in after a connection is established and the local and remote modems negotiate modem options.

The dwModemOptions member of the MODEMDEVCAPS structure specifies the modem options supported by the local modem. For a list of modem options, see the description of the MODEMDEVCAPS structure.

dwNegotiatedDCERate
Specifies the DCE rate that is in effect. This member is filled in after a connection is established and the local and remote modems negotiate modem modulations.
abVariablePortion
Contains provider-defined information, if any.

Requirements

  Windows NT/2000: Requires Windows NT 4.0 or later.
  Windows 95/98: Requires Windows 95 or later.
  Header: Declared in Mcx.h; include Windows.h.

See Also

Communications Overview, Communication Structures, MODEMDEVCAPS