Программное обеспечение ПКРефераты >> Кибернетика >> Программное обеспечение ПК
recb[ra].socket=socket;
recb[ra].esraddress=NULL;
recb[ra].fragcount=2;
recb[ra].fragaddr1=&rheader[ra];
recb[ra].fragsize1=sizeof(IPXHEADER);
recb[ra].fragaddr2=&rbuffer[ra];
recb[ra].fragsize2=PACKETSIZE;
ipxlistenforpacket(&recb[ra]);
}//if(!recb[ra].inuse)
}//for(<NPACKETS)
}
ipxclosesocket(socket);
}
//----------------------------------
void sent_buf(int msh,char *buf)
{
int i;
memset(sbuffer[msh],0,PACKETSIZE);
sprintf(sbuffer[msh],"%s",buf);
for(i=0;i<6;i++) sheader[msh].source.nodeadd[i]=M_ADDR[i];
for(i=0;i<4;i++) sheader[msh].source.netadd[i]=0x9;
for(i=0;i<4;i++) sheader[msh].dest.netadd[i]=0x09;
for(i=0;i<6;i++) sheader[msh].dest.nodeadd[i]=0xff;//M_ADDR[i];
for(i=0;i<6;i++) secb[msh].immedaddr[i]=0xff;//M_ADDR[i];
sheader[msh].dest.socket=socket;
sheader[msh].type=4;
secb[msh].socket=socket;
secb[msh].esraddress=NULL;
secb[msh].fragcount=2;
secb[msh].fragaddr1=&sheader[msh];
secb[msh].fragsize1=sizeof(IPXHEADER);
secb[msh].fragaddr2=&sbuffer[msh];
secb[msh].fragsize2=PACKETSIZE;
ipxsendpacket(&secb[msh]);
}
//-----------------------------------------------------------
int getkey(void)
{
int key, lo, hi;
key = bioskey(0);
lo = key & 0X00FF;
hi = (key & 0XFF00) >> 8;
return(lo ? lo : hi + 256);
}
Программа проверена и работает нориально.