DirectPlay DirectPlay C/C++ 레퍼런스 인터페이스 IDirectPlay8LobbiedApplication Initialize   [목차열람] [주소복사] [슬롯비우기]
IDirectPlay8LobbiedApplication::Initialize 메서드
 
Microsoft DirectX 9.0

IDirectPlay8LobbiedApplication::Initialize 메서드


로비 클라이언트 상태의 변경에 관한 통지 및 로비 클라이언트로부터의 메시지를 받아들이는 메시지 핸들러 함수를 등록한다.

구문

HRESULT Initialize(      

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

파라미터

pvUserContext
[in] 메시지 핸들러의 호출로 지정되는, 사용자 지정의 문맥값. 사용자 지정의 문맥값은, 복수의 인터페이스로부터 공통의 메시지 핸들러에 송신된 메시지를 구별하는데 도움이 된다.
pfn
[in] IDirectPlay8LobbyClient 인터페이스로부터 모든 메시지, 및 IDirectPlay8LobbiedApplication 인터페이스로부터 세션 변경의 통지를 얻어온다 PFNDPNMESSAGEHANDLER 콜백 함수의 포인터.
pdpnhConnection
[out] 애플리케이션이 로비에서 기동했는지 어떠했는지를 검출하기 위해서 사용하는 값. 애플리케이션이 로비에서 기동하고 있는 경우, 이 파라미터에는 로비 클라이언트에의 접속 핸들이 설정된다. 프로세스가 로비에서 기동하고 있지 않는 경우, 이 파라미터는 NULL 로 설정된다.
dwFlags
[in] 다음의 플래그를 지정할 수 있다.
DPLINITIALIZE_DISABLEPARAMVAL
파라미터 타당성의 검증을 무효로 한다.

반환값

성공했을 경우는 S_OK 를 돌려주어, 실패했을 경우는 다음의 몇개의 에러값을 돌려준다.

DPNERR_ALREADYINITIALIZED개체는 이미 초기화되고 있다.
DPNERR_INVALIDFLAGS이 메서드에 건네진 플래그는 무효이다.
DPNERR_INVALIDPARAM메서드에 건네진 1 개 이상의 파라미터가 무효이다.
DPNERR_NOTALLOWED이 기능은, 이 개체에서는 허가되지 않다.


주의

IDirectPlay8LobbiedApplication 인터페이스를 얻어오려면,CoCreateInstance 를 사용한 후에 이 메서드를 호출한다.

로비에서 기동했을 경우, 이 메서드는 로비 클라이언트와의 접속을 자동적으로 확립한다. IDirectPlay8LobbiedApplication::Initialize 를 호출해, 로비에서 기동하고 있는데, 로비 애플리케이션 인터페이스가 로비 클라이언트 프로세스와 통신할 수 없는 경우,IDirectPlay8LobbiedApplication::Initialize 는 4 초 후에 타임 아웃 한다. 이 경우,IDirectPlay8LobbiedApplication::Initialize 는 DPNERR_TIMEDOUT 를 돌려주지만, 성공이다.

   각 프로세스에는 IDirectPlay8LobbyClientIDirectPlay8LobbiedApplication 의 1 개의 인스턴스만 실행할 수 있다.


© 2002 Microsoft Corporation. All rights reserved.
↑TOP