?? server2.h
字號:
// Server2.h: Definition of the Server2 class
//
//////////////////////////////////////////////////////////////////////
#if !defined(AFX_SERVER2_H__0CA26674_61A7_11D5_B050_0050BAF2A927__INCLUDED_)
#define AFX_SERVER2_H__0CA26674_61A7_11D5_B050_0050BAF2A927__INCLUDED_
#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000
#include "resource.h" // main symbols
/////////////////////////////////////////////////////////////////////////////
// Server2
class Server2 :
public IDispatchImpl<IDataFlow, &IID_IDataFlow, &LIBID_COMSERVERLib>,
public IDispatchImpl<IDataChange, &IID_IDataChange, &LIBID_COMSERVERLib>,
public ISupportErrorInfo,
public CComObjectRoot,
public CComCoClass<Server2,&CLSID_Server2>
{
public:
Server2() {
int i;
fix_stno=255;
resendflag=0;
if((Files.sysflg&1)==0)
{
for(i=0;i<255;i++)
File4.flag[i]=0xff;
}
for(i=0;i<255;i++)
{
if(File4.flag[i]!=0xff)
stinfo.stinfo[i]=2;
}
setEventRecord(4,0,0);
}
BEGIN_COM_MAP(Server2)
COM_INTERFACE_ENTRY2(IDispatch, IDataFlow)
COM_INTERFACE_ENTRY(IDataFlow)
COM_INTERFACE_ENTRY(IDataChange)
COM_INTERFACE_ENTRY(ISupportErrorInfo)
END_COM_MAP()
//DECLARE_NOT_AGGREGATABLE(Server2)
// Remove the comment from the line above if you don't want your object to
// support aggregation.
DECLARE_REGISTRY_RESOURCEID(IDR_Server2)
// ISupportsErrorInfo
STDMETHOD(InterfaceSupportsErrorInfo)(REFIID riid);
// IDataFlow
// IDataChange
public:
static bool setEventRecord(int no,int vl1,int vl2);
STDMETHOD(getotherName)(/*[out,size_is(32)]*/ char *name);
STDMETHOD(init)();
STDMETHOD(getrjdata)();
STDMETHOD(clearFlg)();
STDMETHOD(sethotuse)(/*[in]*/ short hot);
STDMETHOD(getaddrbps)(/*[out]*/ int *port,/*[out]*/ int *bps);
STDMETHOD(setre7ord)();
STDMETHOD(ifrjst)(/*[out]*/ int *rb);
STDMETHOD(ifconv)(/*[in]*/ int i,/*[out]*/ int *rb);
STDMETHOD(ifprocess)(/*[out]*/ int *rb);
STDMETHOD(convdata)(/*[in]*/ int i);
STDMETHOD(proc_ord)(/*[in]*/ int i);
STDMETHOD(ifinitExp)(/*[in]*/ int no,/*[out]*/ int *stno);
STDMETHOD(ifinitExt)(/*[in]*/ int no,/*[out]*/ int *stno);
STDMETHOD(ifinit)(/*[in]*/ int no,/*[out]*/ int *stno);
STDMETHOD(setstErr)();
STDMETHOD(ifchecktime)(/*[out]*/ int *rb);
STDMETHOD(processdata)(/*[out]*/ int * rb);
STDMETHOD(setrecvbuf)(/*[in] */int st,/*[in]*/int ct,/*[in,size_is(ct)]*/ byte *recv);
STDMETHOD(getordbuf)(/*[out]*/ byte odbuf[300],/*[out]*/ int* odsize);
STDMETHOD(setNormalord)(/*[in]*/ int stno,/*[out]*/ int *nextno);
STDMETHOD(if01ord)(/*[out]*/ int *rb);
STDMETHOD(ifixst)(/*[out]*/ int * rb);
STDMETHOD(iforder)(/*[out]*/ int * rb);
STDMETHOD(iftransflag)(/*[in]*/ int i,/*[out]*/ int * rb);
STDMETHOD(setflag)(/*[in]*/ int i);
static DATE dateCal(int year,int month,int day,int hour,int minute,int second);
static int if_leapyear(int year);
bool timerok;
bool tmoutflg;
void getremoteinfo();
static LPWSTR wszFromSTR(LPCTSTR szSTR);
static void AnsiToUnicode(LPCSTR pszA, LPOLESTR* ppszW);
static void remote_read_File();
private:
bool setdname(short wno,unsigned char name[16],unsigned char depart[16]);
};
// server2.h : Declaration of the Copcinteface
/////////////////////////////////////////////////////////////////////////////
// Copcinteface
//class ATL_NO_VTABLE Copcinteface :
class Copcinteface :
// public CComObjectRootEx<CComSingleThreadModel>,
public CComObjectRoot,
public CComCoClass<Copcinteface, &CLSID_opcinteface>,
public IDispatchImpl<Iopcinteface, &IID_Iopcinteface, &LIBID_COMSERVERLib>
{
public:
Copcinteface()
{
}
DECLARE_REGISTRY_RESOURCEID(IDR_OPCINTEFACE)
DECLARE_PROTECT_FINAL_CONSTRUCT()
BEGIN_COM_MAP(Copcinteface)
COM_INTERFACE_ENTRY(Iopcinteface)
COM_INTERFACE_ENTRY(IDispatch)
END_COM_MAP()
// Iopcinteface
public:
STDMETHOD(getOPCdt)(/*[in]*/ short stno,/*[in]*/ short ct);
// STDMETHOD(setOPCdata)(/*[in]*/ short stno,/*[in]*/ int dwCount,/*[in,size_is(dwCount)]*/ int* vdt);
STDMETHOD(setOPCdata)(/*[in]*/ short stno,/*[in]*/ int dwCount,/*[in,size_is(dwCount)]*/ VARIANT * vdt);
};
#endif // !defined(AFX_SERVER2_H__0CA26674_61A7_11D5_B050_0050BAF2A927__INCLUDED_)
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -