Microsoft DirectX 9.0 SDK Update (Summer 2003) |
IDirectPlay8LobbyClient::EnumLocalPrograms Method
Enumerates the lobbied applications that are registered on the system.
Syntax
HRESULT EnumLocalPrograms(
GUID *const pGuidApplication, BYTE *const pEnumData, DWORD *const pdwEnumData, DWORD *const pdwItems, const DWORD dwFlags );
Parameters
- pGuidApplication
- [in] Pointer to a variable of type globally unique identifier (GUID) that specifies the lobbied application to enumerate. This parameter is optional, and passing NULL enumerates all available lobbied applications.
- pEnumData
- [out] Pointer to a variable of type BYTE, which is filled with a description of the lobbied application.
- pdwEnumData
- [in] Pointer to variable of type DWORD that specifies the number of bytes contained in the pEnumData buffer. If the buffer in pEnumData is too small, this method returns DPNERR_BUFFERTOOSMALL and sets this parameter to the size of the required buffer.
- pdwItems
- [out] Pointer to a variable of type DWORD that contains the number of DPL_APPLICATION_INFO structures in the pEnumData buffer. This parameter is filled only if the method succeeds.
- dwFlags
- [in] Reserved. Must be 0.
Return Value
Returns S_OK if successful, or one of the following error values.
DPNERR_BUFFERTOOSMALL The supplied buffer is not large enough to contain the requested data. DPNERR_DOESNOTEXIST Requested element is not part of the address. DPNERR_INVALIDFLAGS The flags passed to this method are invalid. DPNERR_INVALIDPARAM One or more of the parameters passed to the method are invalid.
Remarks
This method is generally called twiceonce to obtain the size of the required buffer, and then with the correct buffer size.