DirectPlay DirectPlay C/C++ 레퍼런스 인터페이스 IDirectPlay8Server AddPlayerToGroup [목차열람] [주소복사] [슬롯비우기] |
Microsoft DirectX 9.0 |
그룹에 클라이언트를 추가한다. 클라이언트가 그룹에 올바르게 추가된 후, 그룹에 송신되는 모든 메시지가 클라이언트에 송신된다.
구문
HRESULT AddPlayerToGroup(
const DPNID idGroup, const DPNID idClient, PVOID const pvAsyncContext, DPNHANDLE *const phAsyncHandle, const DWORD dwFlags );
파라미터
- idGroup
- [in] 클라이언트를 추가하는 그룹의 식별자를 지정하는 DPNID 형의 변수.
- idClient
- [in] 그룹에 추가하는 클라이언트의 식별자를 지정하는 DPNID 형의 변수.
- pvAsyncContext
- [in] 사용자 지정의 문맥의 포인터. 이것은,DPN_MSGID_ASYNC_OP_COMPLETE 시스템 메시지의 pvUserContext 멤버에 반환된다. 이 파라미터는 옵션이며, NULL 로 설정할 수 있다.
- phAsyncHandle
- [out] DPNHANDLE. 값이 반환된다. 다만, Microsoft® DirectPlay® 에서는 이 조작의 취소는 허가되지 않기 때문에, 값을 사용할 수 없다.
- dwFlags
- [in] 이 메서드가 처리되는 방법을 제어하는 플래그. 이 메서드에는, 다음의 플래그를 설정할 수 있다.
- DPNADDPLAYERTOGROUP_SYNC
- 메서드를 동기를 잡으면서 처리한다.
반환값
메서드가 동기를 잡으면서 처리되어 처리가 성공했을 경우는 S_OK 를 돌려준다. 디폴트에서는, 이 메서드는 비동기에게 실행되어 보통은 DPNSUCCESS_PENDING 인가, 또는 다음의 몇개의 에러값을 돌려준다.
DPNERR_INVALIDFLAGS 이 메서드에 건네진 플래그는 무효이다. DPNERR_INVALIDGROUP 그룹 ID 가, 이 게임 세션에 대한 유효한 그룹 ID 로서 인식되지 않다. DPNERR_INVALIDPLAYER player ID 가, 이 게임 세션에 대한 유효한 player ID 로서 인식되지 않다. DPNERR_PLAYERALREADYINGROUP player ID 는 이미 그룹에 포함되어 있다.
주의
서버는, 서버 자체 또는 클라이언트를 기존의 그룹에 추가할 수 있다. player가 그룹에 올바르게 추가되면 그룹에 보내진 모든 메시지를 player도 받는다.