65 lines
1.8 KiB
C
65 lines
1.8 KiB
C
/*==========================================================================
|
|
*
|
|
* Copyright (C) 1995-1997 Microsoft Corporation. All Rights Reserved.
|
|
*
|
|
* File: dplaysvr.h
|
|
* Content: dplay winsock shared .exe - allows multiple apps to share
|
|
* a single winsock port
|
|
*
|
|
* History:
|
|
* Date By Reason
|
|
* ==== == ======
|
|
* 2/10/97 andyco created it from ddhelp
|
|
* 1/29/98 sohailm added macros for critical section
|
|
*
|
|
***************************************************************************/
|
|
#ifndef __DPLAYSVR_INCLUDED__
|
|
#define __DPLAYSVR_INCLUDED__
|
|
|
|
// need this for hresult
|
|
#include "ole2.h"
|
|
|
|
// crit section
|
|
extern CRITICAL_SECTION gcsCritSection; // defined in dphelp.c
|
|
#define INIT_DPLAYSVR_CSECT() InitializeCriticalSection(&gcsCritSection);
|
|
#define FINI_DPLAYSVR_CSECT() DeleteCriticalSection(&gcsCritSection);
|
|
|
|
#ifdef DEBUG
|
|
extern int gnCSCount; // count of dplaysvr lock
|
|
#define ENTER_DPLAYSVR() EnterCriticalSection(&gcsCritSection),gnCSCount++;
|
|
#define LEAVE_DPLAYSVR() gnCSCount--;ASSERT(gnCSCount>=0);LeaveCriticalSection(&gcsCritSection);
|
|
#else
|
|
#define ENTER_DPLAYSVR() EnterCriticalSection(&gcsCritSection);
|
|
#define LEAVE_DPLAYSVR() LeaveCriticalSection(&gcsCritSection);
|
|
#endif
|
|
|
|
/*
|
|
* named objects
|
|
*/
|
|
#define DPHELP_EVENT_NAME "__DPHelpEvent__"
|
|
#define DPHELP_ACK_EVENT_NAME "__DPHelpAckEvent__"
|
|
#define DPHELP_STARTUP_EVENT_NAME "__DPHelpStartupEvent__"
|
|
#define DPHELP_SHARED_NAME "__DPHelpShared__"
|
|
#define DPHELP_MUTEX_NAME "__DPHelpMutex__"
|
|
|
|
/*
|
|
* requests
|
|
*/
|
|
#define DPHELPREQ_SUICIDE 1
|
|
#define DPHELPREQ_DPLAYADDSERVER 2
|
|
#define DPHELPREQ_DPLAYDELETESERVER 3
|
|
#define DPHELPREQ_RETURNHELPERPID 4
|
|
|
|
/*
|
|
* communication data
|
|
*/
|
|
typedef struct DPHELPDATA
|
|
{
|
|
int req;
|
|
DWORD pid;
|
|
USHORT port;
|
|
HRESULT hr;
|
|
} DPHELPDATA, *LPDPHELPDATA;
|
|
|
|
#endif
|