Errors are represented by negative values and cannot be combined. This table lists the values that can be returned by all IDirectPlay3 and IDirectPlayLobby2 methods. For a list of the error values each method can return, see the individual method descriptions.
A non-NULL value was passed for the pUnkOuter parameter in DirectPlayCreate, DirectPlayLobbyCreate, or IDirectPlayLobby2::Connect.
The request completed successfully.
The session is full or an incorrect password was supplied.
The requested operation cannot be performed because there are existing active players.
This object is already initialized.
The application has not been started yet.
The password or credentials supplied could not be authenticated.
The data buffer is too large to store.
A message cannot be sent because the transmission medium is busy.
The supplied buffer is not large enough to contain the requested data.
The player cannot be added to the session.
A new group cannot be created.
A new player cannot be created.
Cannot start the application.
A new session cannot be created.
No credentials were supplied and the CryptoAPI package (CAPI) to use for cryptography services cannot be loaded.
The software security package cannot be loaded.
No credentials were supplied and the software security package (SSPI) that will prompt for credentials cannot be loaded.
The capabilities of the DirectPlay object have not been determined yet. This error will occur if the DirectPlay object is implemented on a connectivity solution that requires polling to determine available bandwidth and latency.
The method is in the process of connecting to the network. The application should keep calling the method until it returns DP_OK, indicating successful completion, or it returns a different error.
The requested information could not be digitally encrypted. Encryption is used for message privacy. This error is only relevant in a secure session.
An exception occurred when processing the request.
An undefined error condition occurred.
The credentials supplied (as to IDirectPlay3::SecureOpen) were not valid.
The flags passed to this method are invalid.
The group ID is not recognized as a valid group ID for this game session.
The interface parameter is invalid.
The DirectPlay object pointer is invalid.
One or more of the parameters passed to the method are invalid.
An invalid password was supplied when attempting to join a session that requires a password.
The player ID is not recognized as a valid player ID for this game session.
The session could not be opened because credentials are required and either no credentials were supplied or the credentials were invalid.
The communication link that DirectPlay is attempting to use is not capable of this function.
No communication link was established.
The interface is not supported.
There are no messages in the receive queue.
No name server (host) could be found or created. A host must exist to create a player.
The session is not accepting any new players.
There are no active players in the session.
There are no existing sessions for this game.
Returned by the IDirectPlayLobby2::Connect method if the application was not started by using the IDirectPlayLobby2::RunApplication method or if there is no DPLCONNECTION structure currently initialized for this DirectPlayLobby object.
An action cannot be performed because a player or client application is not logged in. Returned by the IDirectPlay3::Send method when the client application tries to send a secure message without being logged in.
There is insufficient memory to perform the requested operation.
A player has lost the connection to the session.
The message being sent by the IDirectPlay3::Send method is too large.
The connection to the session has been lost.
The requested information could not be digitally signed. Digital signatures are used to establish the authenticity of messages.
The operation could not be completed in the specified time.
The requested function is not available at this time.
The requested object has not been initialized.
An unknown application was specified.
The function is not available in this implementation. Returned from IDirectPlay3::GetGroupConnectionSettings and IDirectPlay3::SetGroupConnectionSettings if they are called from a session that is not a lobby session.
Can be returned in two ways. 1) The user canceled the connection process during a call to the IDirectPlay3::Open method. 2) The user clicked Cancel in one of the DirectPlay service provider dialog boxes during a call to IDirectPlay3::EnumSessions.