DirectPlay DirectPlay C/C++ 레퍼런스 구조체 DPN_APPLICATION_DESC   [목차열람] [주소복사] [슬롯비우기]
DPN_APPLICATION_DESC 구조체
 
Microsoft DirectX 9.0

DPN_APPLICATION_DESC 구조체


Microsoft® DirectPlay® 애플리케이션의 설정을 기술한다.

구문

typedef struct _DPN_APPLICATION_DESC {
    DWORD dwSize;
    DWORD dwFlags;
    GUID guidInstance;
    GUID guidApplication;
    DWORD dwMaxPlayers;
    DWORD dwCurrentPlayers;
    WCHAR *pwszSessionName;
    WCHAR *pwszPassword;
    PVOID pvReservedData;
    DWORD dwReservedDataSize;
    PVOID pvApplicationReservedData;
    DWORD dwApplicationReservedDataSize;
} DPN_APPLICATION_DESC, *PDPN_APPLICATION_DESC;

멤버

dwSize
DPN_APPLICATION_DESC 구조체의 사이즈. 애플리케이션은, 이 구조체를 사용하기 전에, 우선 이 멤버를 설정할 필요가 있다.
dwFlags
애플리케이션의 동작을 기술하는 다음의 몇개의 플래그.
DPNSESSION_CLIENT_SERVER
이 타입의 세션은 클라이언트/서버이다. 이 플래그를 DPNSESSION_MIGRATE_HOST 와 조합할 수 없다.
DPNSESSION_MIGRATE_HOST
피어 투 피어 세션으로 사용되어 호스트의 처리을 가능하게 한다. 이 플래그를 DPNSESSION_CLIENT_SERVER 와 조합할 수 없다.
DPNSESSION_NODPNSVR
DPNSVR 로부터 호스트에게 열거를 전송 해서는 안 된다. 더 자세한 정보는, 「DirectPlay DPNSVR 애플리케이션의 사용법」을 참조할것.
DPNSESSION_REQUIREPASSWORD
세션을 패스워드에 의해 보호한다. 이 플래그를 설정했을 경우,pwszPassword 에 유효한 캐릭터 라인을 지정할 필요가 있다.
DPNSESSION_NOENUMS
DirectPlay 에 열거 쿼리-의 시작을 허가하지 않는다.
DPNSESSION_FAST_SIGNED
각 패킷에 8 바이트값을 추가한다. 수신측이 이 값을 받기 전에, 이 패킷은 이 값을 보관 유지하고 있을 필요가 있다.
DPNSESSION_FULL_SIGNED
패킷의 내용에 근거해 롤링 하는 8 바이트의 SHA1 해시값을 추가한다. 패킷에 올바른 SHA1 서명이 없으면 받아들일 수 없다.
guidInstance
기동시에 DirectPlay 가 생성하는 글로벌 일의 식별자 (GUID). 이 멤버는,IDirectPlay8Peer::GetApplicationDesc ,IDirectPlay8Client::GetApplicationDesc , 또는 IDirectPlay8Server::GetApplicationDesc 를 호출할 때의 [out] 파라미터이다. IDirectPlay8Peer::Connect 메서드 및 IDirectPlay8Client::Connect 메서드를 호출할 때의, 생략 가능한 [in] 파라미터이다. IDirectPlay8Peer::SetApplicationDesc 메서드 또는 IDirectPlay8Server::SetApplicationDesc 메서드를 호출할 때는, GUID_NULL 로 설정할 필요가 있다. 이 GUID 는,IDirectPlay8Server::Host 또는 IDirectPlay8Peer::Host 메서드를 호출해도 취득할 수 없다. GUIDGetApplicationDesc 메서드를 호출해 취득해야 한다.
guidApplication
애플리케이션의 GUID.
dwMaxPlayers
세션으로 사용할 수 있는 player의 최대수를 지정하는 DWORD 형의 변수. player의 수를 무제한하게 할 때는, 이 멤버를 0 으로 설정한다.
dwCurrentPlayers
세션에 현재 접속되고 있는 player의 수를 지정하는 DWORD 형의 변수. 이 멤버는,IDirectPlay8Peer::GetApplicationDesc,IDirectPlay8Client::GetApplicationDesc,IDirectPlay8Server::GetApplicationDesc 의 각 메서드에만 따라 설정된다.
pwszSessionName
세션의 이름을 지정하는 WCHAR 형의 변수의 포인터. 이 멤버는, 정보를 전할 뿐(만큼)의 목적으로 호스트 또는 서버에 의해 설정된다. 클라이언트가 이 이름을 사용해 호스트 또는 서버에 접속할 수 없다.
pwszPassword
세션에의 접속에 필요한 Unicode 패스워드를 지정하는 WCHAR 형의 변수의 포인터. dwFlags 멤버에 DPNSESSION_REQUIREPASSWORD 가 설정되지 않은 경우, 이 값은 NULL 로 할 필요가 있다.
pvReservedData
DirectPlay 의 예약이 끝난 데이터의 포인터. 애플리케이션은 이 값을 변경해서는 안 된다.
dwReservedDataSize
pvReservedData 멤버에 보관 유지되고 있는 데이터 사이즈를 지정하는 DWORD 형의 변수. 애플리케이션은 이 값을 변경해서는 안 된다.
pvApplicationReservedData
애플리케이션 고유의 예약이 끝난 데이터의 포인터. 이 값은 옵션이며, NULL 로 설정할 수 있다.
dwApplicationReservedDataSize
pvApplicationReservedData 멤버의 데이터의 사이즈를 지정하는 DWORD 형의 변수. 이 값은 옵션이며, NULL 로 설정할 수 있다.

주의

애플리케이션의 복수의 인스턴스는, 세션으로 동시에 실행할 수 있다. 복수의 인스턴스가 실행되는 경우, 각 인스턴스는, 관련지을 수 있던 독자적인 DPN_APPLICATION_DESC 구조체를 갖는다. "애플리케이션" 이란, 그 특정의 인스턴스를 가리킨다.

dwMaxPlayers,pvApplicationReservedData,dwApplicationReservedDataSize,pwszPassword,pwszSessionName 의 각 멤버는,IDirectPlay8Peer::Host,IDirectPlay8Server::Host,IDirectPlay8Peer::SetApplicationDesc, 또는 IDirectPlay8Server::SetApplicationDesc 의 몇개의 메서드를 호출할 때로 설정할 수 있다.

DPNSESSION_FAST_SIGNED 플래그 또는 DPNSESSION_FULL_SIGNED 플래그를 설정 하면, player는 Microsoft DirectX® 8.1 이전의 버전을 사용해 세션에 접속할 수 없게 된다. 이러한 플래그를 함께 사용할 수 없다.

시큐러티 위에의 주의 시큐러티 위에의 경고  패스워드로 보호된 세션에 접속하는 경우,pwszPassword 멤버의 데이터는 clear text로 호스트에게 송신된다.

구조체의 정보

헤더dplay8.h
최저한의 operating system Windows 98, Pocket PC 2002


© 2002 Microsoft Corporation. All rights reserved.
↑TOP