44 lines
1.4 KiB
C++
44 lines
1.4 KiB
C++
//Header file XMLWbemCallResult.h for class XMLWbemCallResult - our implementation of the IWbemCallResult
|
|
|
|
#ifndef WMI_XML_CALLRESULT_H
|
|
#define WMI_XML_CALLRESULT_H
|
|
|
|
class CXMLWbemCallResult : public IWbemCallResult
|
|
{
|
|
protected:
|
|
LONG m_lStatus;
|
|
IWbemClassObject *m_pWbemClassObject;
|
|
IWbemServices *m_pWbemServices;
|
|
BSTR m_strResultString; //sysalloc this to the passed bstr ptr in GetResultString(..);
|
|
LONG m_cRef;
|
|
|
|
bool m_bStatusSet;
|
|
bool m_bJobDone;
|
|
|
|
CRITICAL_SECTION m_CriticalSection;
|
|
|
|
public:
|
|
|
|
CXMLWbemCallResult();
|
|
virtual ~CXMLWbemCallResult();
|
|
|
|
//CXMLWbemCallResult functions. - used by CXMLWbemServices.
|
|
//not visible to user (we give him IWbemCallResult *
|
|
STDMETHODIMP SetCallStatus(LONG lStatus);
|
|
STDMETHODIMP SetResultObject(IWbemClassObject *pResultObject);
|
|
STDMETHODIMP SetResultServices(IWbemServices *pResultServices);
|
|
STDMETHODIMP SetResultString(BSTR strResultString);
|
|
|
|
//IUnknown functions
|
|
STDMETHODIMP QueryInterface(REFIID iid,void ** ppvObject);
|
|
STDMETHODIMP_(ULONG) AddRef();
|
|
STDMETHODIMP_(ULONG) Release();
|
|
|
|
//IWbemCallResult functions.
|
|
STDMETHODIMP GetCallStatus(LONG lTimeout,LONG *plStatus);
|
|
STDMETHODIMP GetResultObject(LONG lTimeout,IWbemClassObject **ppResultObject);
|
|
STDMETHODIMP GetResultServices(LONG lTimeout,IWbemServices **ppServices);
|
|
STDMETHODIMP GetResultString(LONG lTimeout,BSTR *pstrResultString);
|
|
};
|
|
|
|
#endif // WMI_XML_CALLRESULT_H
|