DPCAPS
The DPCAPS type contains the capabilities of a DirectPlay object after a call to the DirectPlay4.GetCaps or DirectPlay4.GetPlayerCaps method. Any of these capabilities can differ, depending on whether guaranteed or nonguaranteed capabilities are requested. This type is read-only.
Type DPCAPS
lFlags As Long
lHeaderLength As Long
lHundredBaud As Long
lLatency As Long
lMaxBufferSize As Long
lMaxLocalPlayers As Long
lMaxPlayers As Long
lMaxQueueSize As Long
lTimeout As Long
End Type
Members
- lFlags
- Members of the CONST_DPCAPSFLAGS enumeration that indicate the properties of the DirectPlay object. The DPCAPS_ASYNCSUPPORTED, DPCAPS_SENDTIMEOUTSUPPORTED, DPCAPS_SENDPRIORITYSUPPORTED, DPCAPS_ASYNCCANCELSUPPORTED, and DPCAPS_ASYNCCANCELALLSUPPORTED flags indicate the communications capabilities of the current session.
- lHeaderLength
- Size, in bytes, of the header that will be added to player messages by this DirectPlay object. The header size depends on which service provider is in use.
- lHundredBaud
- Bandwidth specified in multiples of 100 bits per second. For example, a value of 24 specifies 2400 bits per second.
- lLatency
- Estimate of latency by the service provider, in milliseconds. If this value is 0, DirectPlay cannot provide an estimate. Accuracy for some service providers rests on application-to-application testing, taking into consideration the average message size. Latency can differ, depending on whether the application uses guaranteed or nonguaranteed message delivery.
- lMaxBufferSize
- Maximum number of bytes that can be sent in a single packet by this service provider. Larger messages will be sent by using more than one packet.
- lMaxLocalPlayers
- Maximum number of local players supported in a session.
- lMaxPlayers
- Maximum number of local and remote players supported in a session by this DirectPlay object.
- lMaxQueueSize
- This member is no longer used.
- lTimeout
- Service provider's suggested time-out value. By default, DirectPlay will use this time-out value when waiting for replies to messages.
Remarks
Capabilities indicating which aspects of the DirectPlay4.SendEx method are supported, such as the DPCAPS_SENDPRIORITYSUPPORTED and DPCAPS_SENDTIMEOUTSUPPORTED flags in lFlags, are not available until after the session has been opened.
In order for an application to be able to use DPSEND_ASYNC on SendEx one (or both) of the following conditions must be true.
- You specified the DPSESSION_DIRECTPLAYPROTOCOL flag when the session was created.
- The service provider supports asynchronous messaging.
This means that modem, serial, and Internetwork Packet Exchange (IPX) service providers have guaranteed messaging available to them, but they do not have asynchronous messaging unless you explicitly set the DPSESSION_DIRECTPLAYPROTOCOL flag. The TCP/IP service provider implements asynchronous messaging when the computer has Windows Sockets 2.0 present.
If the application hosting the session has specified the DPSESSION_DIRECTPLAYPROTOCOL flag in the DirectPlaySessionData object, all the SendEx options are supported.