📄 netwebbak.cpp
字号:
// netweb.cpp : Implementation of Cnetweb
#include "stdafx.h"
#include "ComServer.h"
#include "netweb.h"
//#include "Server1.h"
/////////////////////////////////////////////////////////////////////////////
// Cnetweb
[
object,
uuid(433E09DB-87EF-4C96-BB5C-5B5AB161ADB5),
dual,
helpstring("Inetweb Interface"),
pointer_default(unique)
]
interface Inetweb : IDispatch
{
[id(1), helpstring("method getNetTraceCT")] HRESULT getNetTraceCT([out] short *count);
[id(2), helpstring("method getNetTrace")] HRESULT getNetTrace([in] short count,[out,size_is(count)] short *wno,[out,size_is(count)] short *idno,[out,size_is(count)] short *rno,[out,size_is(count)] DATE *dt,[out,size_is(count)] short *addr);
[id(3), helpstring("method getNetAlarmtraceCT")] HRESULT getNetAlarmtraceCT([out] short *count);
[id(4), helpstring("method getNetAlarmtrace")] HRESULT getNetAlarmtrace([in] short count,[out,size_is(count)] short *wno,[out,size_is(count)] short *idno,[out,size_is(count)] short *rno,[out,size_is(count)] DATE *dt,[out,size_is(count)] short *addr);
[id(5), helpstring("method getNetUptjCT")] HRESULT getNetUptjCT([out] short *count);
[id(6), helpstring("method getNetUptj")] HRESULT getNetUptj([in] short count,[out,size_is(count)] short *wno,[out,size_is(count)] short *idno,[out,size_is(count)] DATE *downdt,[out,size_is(count)] DATE *updt,[out,size_is(count)] short *dw_rno,[out,size_is(count)] short *up_rno,[out,size_is(count)] short *tag);
[id(7), helpstring("method getNetLocalCT")] HRESULT getNetLocalCT([out] short *count);
[id(8), helpstring("method getNetLocal")] HRESULT getNetLocal([in] short count,[out,size_is(count)] short *rid,[out,size_is(count)] short *addr,[out,size_is(count)] DATE *loctm,[out,size_is(count)] DATE *entm,[out,size_is(count)] DATE *extm,[out,size_is(count)] short *dw_rno,[out,size_is(count)] short *up_rno,[out,size_is(count)] short *lastrno,[out,size_is(count)] short *tag);
[id(9), helpstring("method gethotuse")] HRESULT gethotuse([out] short *rb);
};
STDMETHODIMP Cnetweb::getNetTraceCT(short *count)
{
// TODO: Add your implementation code here
*count=net_trc_ct;
return S_OK;
}
STDMETHODIMP Cnetweb::getNetTrace(short count, short *wno, short *idno, short *rno, DATE *dt, short *addr)
{
// TODO: Add your implementation code here
int i;
for(i=0;i<count;i++)
{
wno[i]=net_trace[i].workno;
idno[i]=net_trace[i].personID;
rno[i]=net_trace[i].reno;
dt[i]=net_trace[i].dt;
addr[i]=net_trace[i].addrno;
}
net_trc_ct-=count;
if(net_trc_ct!=0)
{
for(i=0;i<net_trc_ct;i++)
net_trace[i]=net_trace[count+i];
}
return S_OK;
}
STDMETHODIMP Cnetweb::getNetAlarmtraceCT(short *count)
{
// TODO: Add your implementation code here
*count=net_alm_ct;
return S_OK;
}
STDMETHODIMP Cnetweb::getNetAlarmtrace(short count, short *wno, short *idno, short *rno, DATE *dt, short *addr)
{
// TODO: Add your implementation code here
int i;
for(i=0;i<count;i++)
{
wno[i]=net_alarm[i].workno;
idno[i]=net_alarm[i].personID;
rno[i]=net_alarm[i].reno;
dt[i]=net_alarm[i].dt;
addr[i]=net_alarm[i].addrno;
}
net_alm_ct-=count;
if(net_alm_ct!=0)
{
for(i=0;i<net_alm_ct;i++)
net_alarm[i]=net_alarm[count+i];
}
return S_OK;
}
STDMETHODIMP Cnetweb::getNetUptjCT(short *count)
{
// TODO: Add your implementation code here
*count=net_uptj_ct;
return S_OK;
}
STDMETHODIMP Cnetweb::getNetUptj(short count, short *wno, short *idno, DATE *downdt, DATE *updt,short *dw_rno, short *up_rno,short *tag)
{
// TODO: Add your implementation code here
int i;
for(i=0;i<count;i++)
{
wno[i]=net_uptj[i].workno;
idno[i]=net_uptj[i].personID;
downdt[i]=net_uptj[i].downdtm;
updt[i]=net_uptj[i].updtm;
dw_rno[i]=net_uptj[i].dw_rno;
up_rno[i]=net_uptj[i].up_rno;
tag[i]=net_uptj[i].tag;
}
net_uptj_ct-=count;
for(i=0;i<net_uptj_ct;i++)
net_uptj[i]=net_uptj[count+i];
return S_OK;
}
STDMETHODIMP Cnetweb::getNetLocalCT(short *count)
{
// TODO: Add your implementation code here
int i,j=0;
for(i=0;i<4096;i++)
{
if((perstmb[i].entrytm!=0)||(perstmb[i].exittm!=0))
j++;
}
*count=j;
return S_OK;
}
STDMETHODIMP Cnetweb::getNetLocal(short count,short *rid, short *addr,DATE *loctm,DATE *entm,DATE *extm,
short *dw_rno,short *up_rno, short *lastrno,short *tag)
{
// TODO: Add your implementation code here
int i,j=0;
for(i=0;i<4096;i++)
{
if((perstmb[i].entrytm!=0)||(perstmb[i].exittm!=0))
{
rid[j]=i;
addr[j]=perstmb[i].addrno;
loctm[j]=perstmb[i].localtm;
entm[j]=perstmb[i].entrytm;
extm[j]=perstmb[i].exittm;
dw_rno[j]=perstmb[i].dw_rno;
up_rno[j]=perstmb[i].up_rno;
lastrno[j]=perstmb[i].lastreno;
tag[j]=perstmb[i].tag;
}
}
return S_OK;
}
STDMETHODIMP Cnetweb::gethotuse(short *rb)
{
// TODO: Add your implementation code here
*rb=comsertype;
return S_OK;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -