Leaked source code of windows server 2003
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.
 
 
 
 
 
 

56 lines
2.4 KiB

// --------------------------------------------------------------------------
// Module Name: BadApplicationAPIRequest.h
//
// Copyright (c) 2000, Microsoft Corporation
//
// This file contains a class to implement bad application manager API
// requests.
//
// History: 2000-08-25 vtan created
// 2000-12-04 vtan moved to separate file
// --------------------------------------------------------------------------
#ifndef _BadApplicationAPIRequest_
#define _BadApplicationAPIRequest_
#include "APIDispatcher.h"
#include "APIRequest.h"
#include "BadApplicationManager.h"
#include "PortMessage.h"
// --------------------------------------------------------------------------
// CBadApplicationAPIRequest
//
// Purpose: This is an intermediate class that contains a common method
// that can be used by sub-classes.
//
// History: 2000-08-25 vtan created
// 2000-12-04 vtan moved to separate file
// 2002-03-24 scotthan propagate DispatchSync to API request instance.
// --------------------------------------------------------------------------
class CBadApplicationAPIRequest : public CAPIRequest
{
private:
CBadApplicationAPIRequest (void);
public:
CBadApplicationAPIRequest (CAPIDispatcher* pAPIDispatcher);
CBadApplicationAPIRequest (CAPIDispatcher* pAPIDispatcher, const CPortMessage& portMessage);
virtual ~CBadApplicationAPIRequest (void);
virtual NTSTATUS Execute (CAPIDispatchSync* pAPIDispatchSync);
static NTSTATUS StaticInitialize (HINSTANCE hInstance);
static NTSTATUS StaticTerminate (void);
private:
NTSTATUS Execute_QueryRunning (void);
NTSTATUS Execute_RegisterRunning (void);
NTSTATUS Execute_QueryUserPermission (void);
NTSTATUS Execute_TerminateRunning (void);
NTSTATUS Execute_RequestSwitchUser (void);
private:
static CBadApplicationManager* s_pBadApplicationManager;
};
#endif /* _BadApplicationAPIRequest_ */