H
haoyunp
Unregistered / Unconfirmed
GUEST, unregistred user!
做网络版课件,需要教师机和学生机之间互传指令,请问用什么控件比较合适?
我先用TNMUDP来传输数据。
发送:TMemoryStream *MyStream = new TMemoryStream();
int I;
AnsiString C;
C=Edit4->Text;
I=C.Length();
MyStream->Write(&C[1],I);
NMUDP1->LocalPort=StrToInt(Edit3->Text);
NMUDP1->RemoteHost=Edit1->Text;
NMUDP1->RemotePort=StrToInt(Edit2->Text);
NMUDP1->ReportLevel=Status_Basic;
NMUDP1->SendStream(MyStream);
delete MyStream;
接收:
void __fastcall TForm1::NMUDP1DataReceived(TComponent *Sender,
int NumberBytes, AnsiString FromIP, int Port)
{
char *TmpBuffer=new char[NumberBytes+1];
int i;
NMUDP1->ReadBuffer(TmpBuffer,NumberBytes,i);
TmpBuffer[NumberBytes]='/0';
RichEdit1->Text=RichEdit1->Text+"Byets:"+NumberBytes+TmpBuffer;
delete[] TmpBuffer;
}
但现在的问题是
现在可以多台机器向主机发信息
但主机不能给别的机器发信息,请问是怎么回事?
我做网络版的课件,要教师机和学生机之间传指令,用这个控件合适吗?
现在用 NMMsg 和 NMMSGServ 基本实现了传输数据,
但只能点对点传数据。怎样做广播式传输数据?能用这个控件实现吗?
请高手指点
我先用TNMUDP来传输数据。
发送:TMemoryStream *MyStream = new TMemoryStream();
int I;
AnsiString C;
C=Edit4->Text;
I=C.Length();
MyStream->Write(&C[1],I);
NMUDP1->LocalPort=StrToInt(Edit3->Text);
NMUDP1->RemoteHost=Edit1->Text;
NMUDP1->RemotePort=StrToInt(Edit2->Text);
NMUDP1->ReportLevel=Status_Basic;
NMUDP1->SendStream(MyStream);
delete MyStream;
接收:
void __fastcall TForm1::NMUDP1DataReceived(TComponent *Sender,
int NumberBytes, AnsiString FromIP, int Port)
{
char *TmpBuffer=new char[NumberBytes+1];
int i;
NMUDP1->ReadBuffer(TmpBuffer,NumberBytes,i);
TmpBuffer[NumberBytes]='/0';
RichEdit1->Text=RichEdit1->Text+"Byets:"+NumberBytes+TmpBuffer;
delete[] TmpBuffer;
}
但现在的问题是
现在可以多台机器向主机发信息
但主机不能给别的机器发信息,请问是怎么回事?
我做网络版的课件,要教师机和学生机之间传指令,用这个控件合适吗?
现在用 NMMsg 和 NMMSGServ 基本实现了传输数据,
但只能点对点传数据。怎样做广播式传输数据?能用这个控件实现吗?
请高手指点