windows-nt/Source/XPSP1/NT/shell/services/bamsrv/badapplicationapirequest.h
2020-09-26 16:20:57 +08:00

56 lines
2.2 KiB
C++

// --------------------------------------------------------------------------
// 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
// --------------------------------------------------------------------------
class CBadApplicationAPIRequest : public CAPIRequest
{
private:
CBadApplicationAPIRequest (void);
public:
CBadApplicationAPIRequest (CAPIDispatcher* pAPIDispatcher);
CBadApplicationAPIRequest (CAPIDispatcher* pAPIDispatcher, const CPortMessage& portMessage);
virtual ~CBadApplicationAPIRequest (void);
virtual NTSTATUS Execute (void);
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_ */