|
// PSLIPv4.h : Declaration of the CPSLIPv4
#pragma once
#include "resource.h" // main symbols
#include "GUIDs.h"
#include "PSLExceptions.h"
#include "ProSysLib_i.h"
class ATL_NO_VTABLE CPSLIPv4:
public CComObjectRootEx<CComMultiThreadModel>,
public CComCoClass<CPSLIPv4, &CLSID_PSLIPv4>,
public IDispatchImpl<IPSLIPv4, &IID_IPSLIPv4, &LIBID_ProSysLib, PSL_HiVersion, PSL_LoVersion>,
public CPSLException<&CLSID_PSLIPv4, &IID_IPSLIPv4>
{
public:
CPSLIPv4();
bool Initialize(LPCTSTR sIP, bool bCreating);
BEGIN_COM_MAP(CPSLIPv4)
COM_INTERFACE_ENTRY(IPSLIPv4)
COM_INTERFACE_ENTRY(IDispatch)
COM_INTERFACE_ENTRY(ISupportErrorInfo)
END_COM_MAP()
DECLARE_PROTECT_FINAL_CONSTRUCT()
HRESULT FinalConstruct();
void FinalRelease();
////////////////////////////
// Interface Implementation:
////////////////////////////
STDMETHOD(get_A1)(short * pValue);
STDMETHOD(put_A1)(short newValue);
STDMETHOD(get_A2)(short * pValue);
STDMETHOD(put_A2)(short newValue);
STDMETHOD(get_A3)(short * pValue);
STDMETHOD(put_A3)(short newValue);
STDMETHOD(get_A4)(short * pValue);
STDMETHOD(put_A4)(short newValue);
STDMETHOD(get_Port)(long * pValue);
STDMETHOD(put_Port)(long newValue);
STDMETHOD(get_Address)(long * pValue);
STDMETHOD(put_Address)(long newValue);
STDMETHOD(get_Text)(BSTR * pValue);
STDMETHOD(put_Text)(BSTR newValue);
STDMETHOD(get_Format)(PSLIPv4Format * pValue);
STDMETHOD(put_Format)(PSLIPv4Format newValue);
STDMETHOD(Clear)(VARIANT_BOOL bClearFormat);
private:
void GetAddrValue(tstring & s, USHORT uValue, long PaddingBase = 2);
_bstr_t GetIPName();
USHORT m_uAddr[4]; // 4 octets;
USHORT m_uPort;
PSLIPv4Format m_Format;
};
|
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.