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

IDirectPlay8LobbyClient::ConnectApplication 메서드


로비 대응 애플리케이션을,DPL_CONNECT_INFO 구조체로 지정되고 있는 세션에 접속한다. 애플리케이션이 실행되지 않은 경우, 이 메서드를 사용해 애플리케이션을 기동할 수 있다.

접속이 올바르게 확립되면 로비 애플리케이션은 메시지 핸들러에 DPL_MSGID_CONNECT 시스템 메시지를 송신한다.

구문

HRESULT ConnectApplication(      

    DPL_CONNECT_INFO *const pdplConnectionInfo,     const PVOID pvUserApplicationContext,     DPNHANDLE *const phApplication,     const DWORD dwTimeOut,     const DWORD dwFlags );

파라미터

pdplConnectionInfo
[in] DPL_CONNECT_INFO 구조체의 포인터. 이 구조체는 접속처 애플리케이션의 글로벌 일의 식별자 (GUID)를 포함한, 접속 파라미터를 기술한다.
pvUserApplicationContext
[in] 로비 클라이언트용으로 정의된 문맥값의 포인터. 이 값은, 로비 클라이언트의 메시지 핸들러에의 호출로 건네받는다.
phApplication
[out] 이 메서드가 성공했을 경우로 설정되는 애플리케이션 접속 핸들을 지정하는 DPNHANDLE 의 포인터. 이 핸들은, 애플리케이션과의 통신에 사용된다. 또, 이 핸들은 IDirectPlay8LobbyClient::ReleaseApplication 메서드의 phApplication 파라미터에서도 사용된다.
dwTimeOut
[in] 접속의 처리를 기다리는 시간 (밀리 세컨드 단위)을 지정하는 DWORD 형의 변수.
dwFlags
[in] 예약이 끝난 상태. 0 이 아니면 안된다.

반환값

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

DPNERR_CANTLAUNCHAPPLICATION로비는 지정된 애플리케이션을 기동할 수 없다.
DPNERR_INVALIDFLAGS이 메서드에 건네진 플래그는 무효이다.
DPNERR_INVALIDPARAM메서드에 건네진 1 개 이상의 파라미터가 무효이다.
DPNERR_TIMEDOUT마감 시간이기 때문에, 처리를 완료할 수 없었다.
DPNERR_NOCONNECTION통신 링크가 확립되지 않았다.
DPNERR_DOESNOTEXIST요구된 요소는 주소의 일부에서는 없다.


주의

이 메서드가 DPNERR_NOCONNECTION 를 돌려줄 때, 보통은,pdplConnectionInfo 파라미터에 기술되고 있는 애플리케이션이 IDirectPlay8LobbiedApplication::SetAppAvailable 를 호출하지 않은 것이 원인이다.



© 2002 Microsoft Corporation. All rights reserved.
↑TOP