📄 dplay8.h
字号:
#define DPNCLOSE_IMMEDIATE 0x00000001
//
// Connect flags (for Connect)
//
#define DPNCONNECT_SYNC DPNOP_SYNC
#define DPNCONNECT_OKTOQUERYFORADDRESSING 0x0001
//
// Create group flags (for CreateGroup)
//
#define DPNCREATEGROUP_SYNC DPNOP_SYNC
//
// Destroy group flags (for DestroyGroup)
//
#define DPNDESTROYGROUP_SYNC DPNOP_SYNC
//
// Enumerate clients and groups flags (for EnumPlayersAndGroups)
//
#define DPNENUM_PLAYERS 0x0001
#define DPNENUM_GROUPS 0x0010
//
// Enum hosts flags (for EnumHosts)
//
#define DPNENUMHOSTS_SYNC DPNOP_SYNC
#define DPNENUMHOSTS_OKTOQUERYFORADDRESSING 0x0001
#define DPNENUMHOSTS_NOBROADCASTFALLBACK 0x0002
//
// Enum service provider flags (for EnumSP)
//
#define DPNENUMSERVICEPROVIDERS_ALL 0x0001
//
// GetLocalHostAddresses flags (added for DirectX 9)
//
#define DPNGETLOCALHOSTADDRESSES_COMBINED 0x0001
//
// Get send queue info flags (for GetSendQueueInfo)
//
#define DPNGETSENDQUEUEINFO_PRIORITY_NORMAL 0x0001
#define DPNGETSENDQUEUEINFO_PRIORITY_HIGH 0x0002
#define DPNGETSENDQUEUEINFO_PRIORITY_LOW 0x0004
//
// Group information flags (for Group Info)
//
#define DPNGROUP_AUTODESTRUCT 0x0001
//
// Host flags (for Host)
//
#define DPNHOST_OKTOQUERYFORADDRESSING 0x0001
//
// Set info
//
#define DPNINFO_NAME 0x0001
#define DPNINFO_DATA 0x0002
//
// Initialize flags (for Initialize)
//
#define DPNINITIALIZE_DISABLEPARAMVAL 0x0001
// Flags added for DirectX 9
#define DPNINITIALIZE_HINT_LANSESSION 0x0002
#define DPNINITIALIZE_DISABLELINKTUNING 0x0004
//
// Register Lobby flags
//
#define DPNLOBBY_REGISTER 0x0001
#define DPNLOBBY_UNREGISTER 0x0002
//
// Player information flags (for Player Info / Player Messages)
//
#define DPNPLAYER_LOCAL 0x0002
#define DPNPLAYER_HOST 0x0004
//
// Receive indication flags (added for DirectX 9)
//
#define DPNRECEIVE_GUARANTEED 0x0001
#define DPNRECEIVE_COALESCED 0x0002
//
// Remove player from group flags (for RemovePlayerFromGroup)
//
#define DPNREMOVEPLAYERFROMGROUP_SYNC DPNOP_SYNC
//
// Send flags (for Send/SendTo)
//
#define DPNSEND_SYNC DPNOP_SYNC
#define DPNSEND_NOCOPY 0x0001
#define DPNSEND_NOCOMPLETE 0x0002
#define DPNSEND_COMPLETEONPROCESS 0x0004
#define DPNSEND_GUARANTEED 0x0008
#define DPNSEND_NONSEQUENTIAL 0x0010
#define DPNSEND_NOLOOPBACK 0x0020
#define DPNSEND_PRIORITY_LOW 0x0040
#define DPNSEND_PRIORITY_HIGH 0x0080
// Flag added for DirectX 9
#define DPNSEND_COALESCE 0x0100
//
// Send complete indication flags (added for DirectX 9)
//
#define DPNSENDCOMPLETE_GUARANTEED 0x0001
#define DPNSENDCOMPLETE_COALESCED 0x0002
//
// Session Flags (for DPN_APPLICATION_DESC)
//
#define DPNSESSION_CLIENT_SERVER 0x0001
#define DPNSESSION_MIGRATE_HOST 0x0004
#define DPNSESSION_NODPNSVR 0x0040
#define DPNSESSION_REQUIREPASSWORD 0x0080
// Flag added for DirectX 9
#define DPNSESSION_NOENUMS 0x0100
#define DPNSESSION_FAST_SIGNED 0x0200
#define DPNSESSION_FULL_SIGNED 0x0400
//
// Set client info flags (for SetClientInfo)
//
#define DPNSETCLIENTINFO_SYNC DPNOP_SYNC
//
// Set group info flags (for SetGroupInfo)
//
#define DPNSETGROUPINFO_SYNC DPNOP_SYNC
//
// Set peer info flags (for SetPeerInfo)
//
#define DPNSETPEERINFO_SYNC DPNOP_SYNC
//
// Set server info flags (for SetServerInfo)
//
#define DPNSETSERVERINFO_SYNC DPNOP_SYNC
//
// SP capabilities flags
//
#define DPNSPCAPS_SUPPORTSDPNSVR 0x0001
#define DPNSPCAPS_SUPPORTSDPNSRV DPNSPCAPS_SUPPORTSDPNSVR
#define DPNSPCAPS_SUPPORTSBROADCAST 0x0002
#define DPNSPCAPS_SUPPORTSALLADAPTERS 0x0004
// Flags added for DirectX 9
#define DPNSPCAPS_SUPPORTSTHREADPOOL 0x0008
#define DPNSPCAPS_NETWORKSIMULATOR 0x0010
//
// SP information flags (added for DirectX 9)
//
#define DPNSPINFO_NETWORKSIMULATORDEVICE 0x0001
/****************************************************************************
*
* DirectPlay8 Structures (Non-Message)
*
****************************************************************************/
//
// Application description
//
typedef struct _DPN_APPLICATION_DESC
{
DWORD dwSize; // Size of this structure
DWORD dwFlags; // Flags (DPNSESSION_...)
GUID guidInstance; // Instance GUID
GUID guidApplication; // Application GUID
DWORD dwMaxPlayers; // Maximum # of players allowed (0=no limit)
DWORD dwCurrentPlayers; // Current # of players allowed
WCHAR *pwszSessionName; // Name of the session
WCHAR *pwszPassword; // Password for the session
PVOID pvReservedData;
DWORD dwReservedDataSize;
PVOID pvApplicationReservedData;
DWORD dwApplicationReservedDataSize;
} DPN_APPLICATION_DESC, *PDPN_APPLICATION_DESC;
//
// Generic Buffer Description
//
typedef struct _BUFFERDESC
{
DWORD dwBufferSize;
BYTE * pBufferData;
} BUFFERDESC, DPN_BUFFER_DESC, *PDPN_BUFFER_DESC;
typedef BUFFERDESC FAR * PBUFFERDESC;
//
// DirectPlay8 capabilities
//
typedef struct _DPN_CAPS
{
DWORD dwSize; // Size of this structure
DWORD dwFlags; // Flags
DWORD dwConnectTimeout; // ms before a connect request times out
DWORD dwConnectRetries; // # of times to attempt the connection
DWORD dwTimeoutUntilKeepAlive; // ms of inactivity before a keep alive is sent
} DPN_CAPS, *PDPN_CAPS;
//
// Extended capabilities structures (added for DirectX 9)
//
typedef struct _DPN_CAPS_EX
{
DWORD dwSize; // Size of this structure
DWORD dwFlags; // Flags
DWORD dwConnectTimeout; // ms before a connect request times out
DWORD dwConnectRetries; // # of times to attempt the connection
DWORD dwTimeoutUntilKeepAlive; // ms of inactivity before a keep alive is sent
DWORD dwMaxRecvMsgSize; // maximum size in bytes of message that can be received
DWORD dwNumSendRetries; // maximum number of send retries before link is considered dead
DWORD dwMaxSendRetryInterval; // maximum period in msec between send retries
DWORD dwDropThresholdRate; // percentage of dropped packets before throttling
DWORD dwThrottleRate; // percentage amount to reduce send window when throttling
DWORD dwNumHardDisconnectSends; // number of hard disconnect frames to send when close immediate flag is specified
DWORD dwMaxHardDisconnectPeriod; // maximum period between hard disconnect sends
} DPN_CAPS_EX, *PDPN_CAPS_EX;
//
// Connection Statistics information
//
typedef struct _DPN_CONNECTION_INFO
{
DWORD dwSize;
DWORD dwRoundTripLatencyMS;
DWORD dwThroughputBPS;
DWORD dwPeakThroughputBPS;
DWORD dwBytesSentGuaranteed;
DWORD dwPacketsSentGuaranteed;
DWORD dwBytesSentNonGuaranteed;
DWORD dwPacketsSentNonGuaranteed;
DWORD dwBytesRetried; // Guaranteed only
DWORD dwPacketsRetried; // Guaranteed only
DWORD dwBytesDropped; // Non Guaranteed only
DWORD dwPacketsDropped; // Non Guaranteed only
DWORD dwMessagesTransmittedHighPriority;
DWORD dwMessagesTimedOutHighPriority;
DWORD dwMessagesTransmittedNormalPriority;
DWORD dwMessagesTimedOutNormalPriority;
DWORD dwMessagesTransmittedLowPriority;
DWORD dwMessagesTimedOutLowPriority;
DWORD dwBytesReceivedGuaranteed;
DWORD dwPacketsReceivedGuaranteed;
DWORD dwBytesReceivedNonGuaranteed;
DWORD dwPacketsReceivedNonGuaranteed;
DWORD dwMessagesReceived;
} DPN_CONNECTION_INFO, *PDPN_CONNECTION_INFO;
//
// Group information structure
//
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -