mirror of https://github.com/lianthony/NT4.0
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
82 lines
2.2 KiB
82 lines
2.2 KiB
/*==========================================================================
|
|
*
|
|
* Copyright (C) 1995 Microsoft Corporation. All Rights Reserved.
|
|
*
|
|
* File: ddhelp.c
|
|
* Content: helper app to cleanup after dead processes
|
|
* History:
|
|
* Date By Reason
|
|
* ==== == ======
|
|
* 29-mar-95 craige initial implementation
|
|
* 09-may-95 craige call fn in dll
|
|
* 20-jul-95 craige internal reorg to prevent thunking during modeset
|
|
* 29-nov-95 angusm added DDHELPREQ_CREATEDSFOCUSTHREAD
|
|
*
|
|
***************************************************************************/
|
|
#ifndef __DDHELP_INCLUDED__
|
|
#define __DDHELP_INCLUDED__
|
|
|
|
/*
|
|
* named objects
|
|
*/
|
|
#define DDHELP_EVENT_NAME "__DDHelpEvent__"
|
|
#define DDHELP_ACK_EVENT_NAME "__DDHelpAckEvent__"
|
|
#define DDHELP_STARTUP_EVENT_NAME "__DDHelpStartupEvent__"
|
|
#define DDHELP_SHARED_NAME "__DDHelpShared__"
|
|
#define DDHELP_MUTEX_NAME "__DDHelpMutex__"
|
|
#define DDHELP_MODESET_EVENT_NAME "__DDHelpModeSetEvent%d__"
|
|
|
|
/*
|
|
* requests
|
|
*/
|
|
#define DDHELPREQ_NEWPID 1
|
|
#define DDHELPREQ_NEWDC 2
|
|
#define DDHELPREQ_FREEDCLIST 3
|
|
#define DDHELPREQ_RETURNHELPERPID 4
|
|
#define DDHELPREQ_LOADDLL 5
|
|
#define DDHELPREQ_FREEDLL 6
|
|
#define DDHELPREQ_SUICIDE 7
|
|
#define DDHELPREQ_KILLATTACHED 8
|
|
#define DDHELPREQ_WAVEOPEN 9
|
|
#define DDHELPREQ_WAVECLOSE 10
|
|
#define DDHELPREQ_CREATETIMER 11
|
|
#define DDHELPREQ_KILLTIMER 12
|
|
#define DDHELPREQ_CREATEHELPERTHREAD 13
|
|
#define DDHELPREQ_CREATEMODESETTHREAD 14
|
|
#define DDHELPREQ_KILLMODESETTHREAD 15
|
|
#define DDHELPREQ_CREATEDSMIXERTHREAD 16
|
|
#define DDHELPREQ_CALLDSCLEANUP 17
|
|
#define DDHELPREQ_CREATEDSFOCUSTHREAD 18
|
|
|
|
/*
|
|
* callback routine
|
|
*/
|
|
typedef BOOL (FAR PASCAL *LPHELPNOTIFYPROC)(struct DDHELPDATA *);
|
|
typedef BOOL (FAR PASCAL *LPHELPMODESETNOTIFYPROC)( LPVOID lpDD );
|
|
typedef void (FAR PASCAL *LPDSCLEANUP)(LPVOID pds);
|
|
|
|
/*
|
|
* communication data
|
|
*/
|
|
typedef struct DDHELPDATA
|
|
{
|
|
int req;
|
|
HANDLE req_id;
|
|
DWORD pid;
|
|
BOOL isdisp;
|
|
union
|
|
{
|
|
LPHELPNOTIFYPROC lpNotify;
|
|
LPHELPMODESETNOTIFYPROC lpModeSetNotify;
|
|
};
|
|
DWORD context;
|
|
char fname[260];
|
|
char func[64];
|
|
DWORD dwData1;
|
|
DWORD dwData2;
|
|
LPVOID pData1;
|
|
LPVOID pData2;
|
|
DWORD dwReturn;
|
|
} DDHELPDATA, *LPDDHELPDATA;
|
|
|
|
#endif
|