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.
68 lines
2.1 KiB
68 lines
2.1 KiB
// RequestObject.h: interface for the CRequestObject class.
|
|
// Copyright (c)1997-1999 Microsoft Corporation
|
|
//
|
|
//////////////////////////////////////////////////////////////////////
|
|
|
|
#if !defined(AFX_REQUESTOBJECT_H__c5f6cc21_6195_4555_b9d8_3ef327763cae__INCLUDED_)
|
|
#define AFX_REQUESTOBJECT_H__c5f6cc21_6195_4555_b9d8_3ef327763cae__INCLUDED_
|
|
|
|
#if _MSC_VER >= 1000
|
|
#pragma once
|
|
#endif // _MSC_VER >= 1000
|
|
|
|
class CGenericClass;
|
|
|
|
class CRequestObject
|
|
{
|
|
public:
|
|
CRequestObject();
|
|
virtual ~CRequestObject();
|
|
|
|
void Initialize(IWbemServices *pNamespace);
|
|
|
|
HRESULT CreateObject(BSTR bstrPath, IWbemObjectSink *pHandler, IWbemContext *pCtx);
|
|
HRESULT CreateObjectEnum(BSTR bstrPath, IWbemObjectSink *pHandler, IWbemContext *pCtx);
|
|
HRESULT PutObject(IWbemClassObject *pInst, IWbemObjectSink *pHandler, IWbemContext *pCtx);
|
|
HRESULT ExecMethod(BSTR bstrPath, BSTR bstrMethod, IWbemClassObject *pInParams,
|
|
IWbemObjectSink *pHandler, IWbemContext *pCtx);
|
|
HRESULT DeleteObject(BSTR bstrPath, IWbemObjectSink *pHandler, IWbemContext *pCtx);
|
|
|
|
bool ParsePath(BSTR bstrPath);
|
|
bool Cleanup();
|
|
|
|
BSTR m_bstrClass;
|
|
BSTR m_bstrPath;
|
|
BSTR m_Property[POD_KEY_LIST_SIZE];
|
|
BSTR m_Value[POD_KEY_LIST_SIZE];
|
|
int m_iPropCount;
|
|
int m_iValCount;
|
|
|
|
IWbemServices *m_pNamespace;
|
|
IWbemObjectSink *m_pHandler;
|
|
|
|
private:
|
|
HRESULT CreateClass(CGenericClass **pClass, IWbemContext *pCtx);
|
|
|
|
bool IsInstance();
|
|
static CHeap_Exception m_he;
|
|
|
|
protected:
|
|
ULONG m_cRef; //Object reference count
|
|
};
|
|
|
|
//Properties
|
|
//////////////////
|
|
extern const WCHAR *pSceStorePath;
|
|
extern const WCHAR *pLogFilePath;
|
|
extern const WCHAR *pLogFileRecord;
|
|
extern const WCHAR *pLogArea;
|
|
extern const WCHAR *pLogErrorCode;
|
|
extern const WCHAR *pKeyName;
|
|
extern const WCHAR *pKey;
|
|
extern const WCHAR *pValue;
|
|
extern const WCHAR *pPodID;
|
|
extern const WCHAR *pPodSection;
|
|
extern const WCHAR *szPodGUID;
|
|
|
|
#endif // !defined(AFX_REQUESTOBJECT_H__c5f6cc21_6195_4555_b9d8_3ef327763cae__INCLUDED_)
|
|
|