DirectPlay DirectPlay C++ 샘플 AddressOverride   [목차열람] [주소복사] [슬롯비우기]
AddressOverride
 
Microsoft DirectX 9.0

AddressOverride


AddressOverride 는, 네트워크 상의 다른 세션의 호스트가 되는지, 또는 그 세션에 접속하기 위해서, Microsoft® DirectPlay® 에 프로그램적으로 주소를 제공하는 방법을 나타낸다. 이외에는, DirectPlay 로 표준의 다이알로그 박스를 표시해, 사용자에 접속 설정을 입력받는 방법이 있다. 대부분의 게임에서는, 독자적인 사용자 인터페이스를 제공하기 위해서, 주소를 직접 설정한다.

패스

소스 파일 :(SDK 루트) \Samples\C++\DirectPlay\AddressOverride

실행 가능 파일 :(SDK 루트) \Samples\C++\DirectPlay\Bin

사용자가이드

AddressOverride 샘플에서는, 주소의 파라미터를 선택하는 다이알로그 박스가 표시된다. 이 다이알로그 박스를 사용하려면 , 다음의 순서에 따른다.

  1. player의 이름과 세션을 입력한다.
  2. 세션의 호스트가 되는 경우는,[Host Session] 체크 박스를 온으로 한다.
  3. [Service Provider] 의 일람으로부터 서비스 프로바이더를 선택한다.
  4. [Adapter] 의 일람으로부터 어댑터를 선택한다.
  5. 이후의 순서는, 선택하는 서비스 프로바이더에 따라서 다르다.
    • 전송 제어 프로토콜/인터넷 프로토콜 (TCP/IP) 서비스 프로바이더를 선택하는 경우
      • 세션에 참가하려면 , 해당의 편집 박스에 인터넷 프로토콜 (IP) 주소와 포트를 입력해, 특정의 호스트를 선택한다. [IP address] 및 [Port] 체크 박스를 오프로 해 두면 로컬 네트워크로 이용 가능한 호스트를 검색할 수 있다.
      • 세션의 호스트가 되려면 , 포트를 지정한다. [Port] 체크 박스를 오프로 해 두면 포트는 자동적으로 선택된다.
    • 모뎀 서비스 프로바이더를 선택하는 경우, 전화번호를 입력한다.
    • Internetwork Packet Exchange (IPX) 서비스 프로바이더를 선택하는 경우, 포트를 입력한다.
    • 시리얼 서비스 프로바이더를 선택하는 경우, 시리얼 설정을 사용자에 입력받기 위한 DirectPlay 의 디폴트 다이알로그 박스가 표시된다.

[Address Override] 다이알로그 박스로 필요한 정보를 설정하면[OK] 를 클릭해 게임을 시작 하는지, 게임에 참가한다. 이 게임은, SimplePeer 샘플에 유사하고 있다. 더 자세한 정보는,SimplePeer 의 「사용자가이드」를 참조할것.

프로그래밍 정보

AddressOverride 샘플은, SimplePeer 샘플과 매우 비슷하다. 더 자세한 정보는, SimplePeer 샘플의 「프로그래밍 정보」를 참조할것. AddressOverride 로 다른 것은, 디폴트의 주소 선택 다이알로그 박스를 표시하는 것이 아니라, 프로그램적으로 주소를 지정하는 것이다.

다음의 일람은, AddressOverride 샘플이 동작하는 구조의 개요를 나타내고 있다. [OK] 를 클릭 하면, 다음의 처리가 실행된다.

  1. [Host Session] 체크 박스를 통해서, 사용자는 세션의 호스트가 되고 싶은 것인지, 또는 세션에 참가하고 싶은 것인지를 판단한다.
  2. [Service Provider] 의 일람으로부터 서비스 프로바이더를 판단해, 적절한 글로벌 일의 식별자 (GUID)를 선택한다.
  3. pDeviceAddress 라는 이름의 IDirectPlay8Address 개체를 생성 한다.
  4. 그 개체의 IDirectPlay8Address::SetSP 메서드를 호출해, 서비스 프로바이더를 지정한다.
  5. 사용자가 세션의 호스트가 되는 경우,pHostAddress 라는 이름의 IDirectPlay8Address 개체를 생성 한다. 다음에, 그 개체의 IDirectPlay8Address::SetSP 메서드를 호출해, 서비스 프로바이더를 지정한다.
  6. 어댑터가 선택되었을 경우,pDeviceAddress 개체의 IDirectPlay8Address::SetDevice 를 호출해, 어댑터를 지정한다.

다음에,IDirectPlay8Address::AddComponent 를 호출해, 주소 개체의 초기화를 완료한다. 그 자세한 것은, 선택된 서비스 프로바이더와 사용자가 세션에 참가하고 있는지 호스트가 되고 있는지에 따라서 다르다.

SimplePeer 샘플과 거의 똑같이, 장치 및 호스트의 주소 개체를 사용해, 세션에 접속한다.



© 2002 Microsoft Corporation. All rights reserved.
↑TOP