Microsoft DirectX 8.0 (C++)

IDirectPlay8LobbiedApplication::Initialize

Registers a message handler function that receives notifications about changes in the state of the lobby client and receives messages from the lobby client.

HRESULT Initialize(
const PVOID pvUserContext,
const PFNDPNMESSAGEHANDLER pfn,
DPNHANDLE *const pdpnhConnection,
const DWORD dwFlags
);

Parameters

pvUserContext
Pointer to the user-provided context value in calls to the message handler. Providing a user-context value is useful to differentiate messages from multiple interfaces to a common message handler.
pfn
Pointer to a PFNDPNMESSAGEHANDLER callback function that receives all messages from the IDirectPlay8LobbyClient interface and indications of session changes from the IDirectPlay8LobbiedApplication interface.
pdpnhConnection
Value used to detect if your application was lobby launched. If your application was lobby launched, this parameter will be set to the connection handle for the lobby client. If your process was not lobby launched, this parameter is set to NULL.
dwFlags
The following flag can be specified.
DPLINITIALIZE_DISABLEPARAMVAL
Disables parameter validation.

Return Values

Returns S_OK if successful, or one of the following error values.

DPNERR_INVALIDFLAGS
DPNERR_INVALIDPARAM

Remarks

Call this method first after using CoCreateInstance to obtain the IDirectPlay8LobbiedApplication interface.

This method automatically establishes a connection to the lobby client if you were lobby launched. If you call Initialize and you were lobby launched and the lobbied application interface is unable to contact the lobby client process, Initialize will time out after four seconds. In this case, Initialize will return DPNERR_TIMEDOUT but will still succeed.

Requirements

  Windows NT/2000: Available as a redistributable for Windows 2000 and later.
  Windows 95/98: Available as a redistributable for Windows 95 and later.
  Header: Declared in Dplobby8.h.