|
// PSLOS.h : Declaration of the CPSLOS
#pragma once
#include "resource.h" // main symbols
#include "GUIDs.h"
#include "AutoObject.h"
#include "PSLExceptions.h"
#include "ProSysLib_i.h"
#include "PSLOSVersion.h"
#include "PSLMemory.h"
class ATL_NO_VTABLE CPSLOS :
public CComObjectRootEx<CComMultiThreadModel>,
public CComCoClass<CPSLOS, &CLSID_PSLOS>,
public IDispatchImpl<IPSLOS, &IID_IPSLOS, &LIBID_ProSysLib, PSL_HiVersion, PSL_LoVersion>,
public CPSLException<&CLSID_PSLOS, &IID_IPSLOS>
{
public:
CPSLOS();
BEGIN_COM_MAP(CPSLOS)
COM_INTERFACE_ENTRY(IPSLOS)
COM_INTERFACE_ENTRY(IDispatch)
COM_INTERFACE_ENTRY(ISupportErrorInfo)
END_COM_MAP()
DECLARE_PROTECT_FINAL_CONSTRUCT()
HRESULT FinalConstruct();
void FinalRelease();
////////////////////////////
// Interface Implementation:
////////////////////////////
STDMETHOD(get_Is64Bit)(VARIANT_BOOL * pValue);
STDMETHOD(get_Version)(IPSLOSVersion ** ppValue);
STDMETHOD(get_AffinityMask)(VARIANT * pValue);
STDMETHOD(get_ProductName)(BSTR * pValue);
STDMETHOD(get_ProductId)(BSTR * pValue);
STDMETHOD(get_Memory)(IPSLMemory ** ppValue);
STDMETHOD(GetSpecialFolder)(PSLSpecialFolder Folder, BSTR * pValue);
private:
bool m_bIs64Bit;
_bstr_t m_sProductName;
_bstr_t m_sProductId;
CAutoObject<CPSLOSVersion> m_Version;
CAutoObject<CPSLMemory> m_Memory;
};
|
By viewing downloads associated with this article you agree to the Terms of Service and the article's licence.
If a file you wish to view isn't highlighted, and is a text file (not binary), please
let us know and we'll add colourisation support for it.