Windows NT 4.0 source code leak
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

/*==========================================================================
*
* 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