|
// PSLModuleVersion.h : Declaration of the CPSLModuleVersion
#pragma once
#include "resource.h" // main symbols
#include "GUIDs.h"
#include "PSLExceptions.h"
#include "ProSysLib_i.h"
#include "PSLVersionNumber.h"
class ATL_NO_VTABLE CPSLModuleVersion :
public CComObjectRootEx<CComMultiThreadModel>,
public CComCoClass<CPSLModuleVersion, &CLSID_PSLModuleVersion>,
public IDispatchImpl<IPSLModuleVersion, &IID_IPSLModuleVersion, &LIBID_ProSysLib, PSL_HiVersion, PSL_LoVersion>,
public CPSLException<&CLSID_PSLModuleVersion, &IID_IPSLModuleVersion>
{
public:
CPSLModuleVersion();
~CPSLModuleVersion();
void InitInternal(LPCTSTR strPath);
bool InitExternal(LPCTSTR strPath);
BEGIN_COM_MAP(CPSLModuleVersion)
COM_INTERFACE_ENTRY(IPSLModuleVersion)
COM_INTERFACE_ENTRY(IDispatch)
COM_INTERFACE_ENTRY(ISupportErrorInfo)
END_COM_MAP()
DECLARE_PROTECT_FINAL_CONSTRUCT()
HRESULT FinalConstruct();
void FinalRelease();
////////////////////////////
// Interface Implementation:
////////////////////////////
STDMETHOD(get_IsValid)(VARIANT_BOOL * pValue);
STDMETHOD(get_IsDebug)(VARIANT_BOOL * pValue);
STDMETHOD(get_IsPatched)(VARIANT_BOOL * pValue);
STDMETHOD(get_IsPreRelease)(VARIANT_BOOL * pValue);
STDMETHOD(get_FileVersion)(IPSLVersionNumber ** ppValue);
STDMETHOD(get_ProductVersion)(IPSLVersionNumber ** ppValue);
private:
CComObject<CPSLVersionNumber> * m_pProductVersion;
CComObject<CPSLVersionNumber> * m_pFileVersion;
bool m_bValid;
bool m_bDebug;
bool m_bPatched;
bool m_bPreRelease;
bool m_bInitialized;
LPBYTE m_pVersionBuffer;
};
|
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.