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.
 
 
 
 
 
 

91 lines
2.1 KiB

/******************************************************************
// Copyright (c) 2000-2001 Microsoft Corporation, All Rights Reserved
JOProcess.H -- WMI provider class definition
Description:
*******************************************************************/
#if NTONLY >= 5
#pragma once
#define PROVIDER_NAME_WIN32NAMEDJOBOBJECTPROCESS L"Win32_NamedJobObjectProcess"
_COM_SMARTPTR_TYPEDEF(CInstance, __uuidof(CInstance));
class CJOProcess : public Provider
{
public:
// Constructor/destructor
//=======================
CJOProcess(
LPCWSTR lpwszClassName,
LPCWSTR lpwszNameSpace);
virtual ~CJOProcess();
protected:
// Reading Functions
//============================
virtual HRESULT ExecQuery(
MethodContext *pMethodContext,
CFrameworkQuery& Query,
long lFlags);
virtual HRESULT GetObject(
CInstance* pInstance,
long lFlags /*= 0L*/ );
virtual HRESULT EnumerateInstances(
MethodContext* pMethodContext,
long lFlags);
// Writing Functions
//============================
virtual HRESULT PutInstance(
const CInstance& Instance,
long lFlags = 0L);
private:
HRESULT FindSingleInstance(
const CInstance* pInstance);
HRESULT Create(
const CInstance &JOInstance,
const CInstance &ProcInstance);
bool GetInstKey(
CHString& chstrCollection,
CHString& chstrCollectionID);
HRESULT Enumerate(
MethodContext *pMethodContext);
HRESULT EnumerateProcsInJob(
LPCWSTR wstrJobID,
MethodContext *pMethodContext);
void UndecorateJOName(
LPCWSTR wstrDecoratedName,
CHString& chstrUndecoratedJOName);
void DecorateJOName(
LPCWSTR wstrUndecoratedName,
CHString& chstrDecoratedJOName);
};
#endif // #if NTONLY >= 5