您的位置:首页 > 代理IP资讯
发布时间:2020-03-06 16:38:21
修改ip地址方法、动态IP网站建设方法的初探

  随着互联网和校园网建设的迅猛发展,校园网在各地雨后春笋般地建立起来,其建设观模和制作水平也相当不错。些学校不但在自己的网靖上存放了很多的教学资源,而目其先进的教学理念和管理乃法也通过网靖得到充分地体现。


  何将这些好的资源、好的理万法在不只范围内只享,来带动和影侗其它学校,是只教育主管部门急待解决的问颗。而各校都串请名显然不是最好的万法,况目大数学校是宽带上网,拥有的只是一个动IP。如果在各校网靖服务器上运行一《程序,能将所在服务器的动态IP发送到教育局的服务器上,那么全只各校都可以通过教宵局主页实现互访达到资源只享的目的。


  貝体万法分三个部分:一是客户端运行程序,负贲将本校信息和动态的公网IP发送到教育局服务器上。另一个是在服务器运行的程序,接收各校发来的息及各自的IP并写入一数据厍。三是在教育网主页加入一段代码,将数括厍包IP地址的信忌反映到主页上,当点市学校名称时直接访问学校的网站。当个别学校更IP地址时,由客F端程序再将新IP发到教育局服务器上。


  客户端程序代码:在工稗中加入一个编辑控件,两个按控件,一个客户端控件,分别是


  TCIientSocket*ClientSocket1;


  TButton*Button 1;TButton*Button2;


  TEdit*Edie1;


  //然后初始化一


  fastcall TForm 1::TForml(TComponent*Owner)


  TForm(Owner)


  Edit1—>Text="请输入学校名称“


  //“连接"按扭,当点击“连接"按扭时完成以下工作


  void fastcall TForml::Button1 Click(TObject


  *Sender)


  AnsiString Server=%0.x·x.x“;//教育局服务器IP


  bool Ok=InputQuery("建立连接","请输入主机的地址[P:",Server);if(Server!=


  ClientSocket 1一>Active=false;


  ClientSocket1一>Address=Server;


  ClientSocket1—>Port=xxxx;//教育局服务器端口


  ClientSocketI一>Open();//打开端口


  //“断开”按扭代码一void fastcall TFonnl::Button2Click(TObject


  *Sender)


  ClientSocket1一>Close();//断开连接


  //应用程序向Socket中写入数据代码一void—fastcall TForml::ClientSocket1 Write(TObject


  *Sender,


  TCustomWinSocket*Socket)


  Socket—>SendText(Edit1—>Text);//向Socket发送数


  据,内容是学校名称


  //程序退出按扭void fastcall TForml::x 1 Click(TObject*Sender)


  Application—>Terminatc 0;


  服务器端代码用于接收数据并写入数据库。


  加入下绢件.


  TMerno*Merno 1;


  TScrverSocket*ServerSocket 1;


  TButton*Button 1;


  TADOTabIe*ADOTable 1;


  TDataSource*DataSource 1;TDBGrid*DBGrid1;


  //初始化,利用ADO连接数据库一fastcall TForm 1::TForm 1(TComponent*Owner):


  TForm(Owner)


  ADOTable 1—>ConnectionString Provider


  Microsoft.Jet.OLEDB.4.O;Data Source+ExtractFi1ePath


  (ParamStr(0)).mdb;Persist Security Info=False";


  ADOTable 1—>Active=true;


  void—astcall TForm 1::Button 1 Click(TObject


  *Sender)


  ServerSocket 1—>Active=false;


  ServerSocket1—


  ServerSocket 1—>Active=true;


  void fastcall TForm1::ServerSocket1 ClientRead


  (TObject*Sender,


  TCustomWinSocket*Socket)


  AnsiString yourname;int pos;


  TDate today—Date();


  TTime time=Time();yourname Socket—>ReceiveText();//*


  "+yourname)Memo I—>Lines—>Add("IP:"+Socket


  RemoteAddress)


  ADOTable1—>Filter=AnsiString name yourname+"'"ADOTable 1—>Filtered=true;


  if(ADOTable1


  ADOTab1e1—>Edit();


  ADOTab1e 1—>Append;


  ADOTab1e1->Fie1dByName youmame;("name")—>AsString


  ADOTab1e1—>Fie1dByName


  Socket—>RemoteAddress;—>AsString


  ADOTab1e1—>FieldByName


  DateToS tr(today);date"—>AsString


  ADOTab1e1->Fie1dByName—>AsString


  TimeToStr(time);


  ADOTab1e1—>UpdateRecord();


  ADOTab1e 1->Filtered=;


  Else


  ADOTab1e1->Edit();


  ADOTab1e1->Fie1dByName


  Socket—>RemoteAddress;IP")—>AsString


  ADOTab1e 1>FieldByName date")—>AsString


  ADOTab1e 1—>FieldByName('f time")—>AsString


  TimeToStr(time);


  ADOTab1e 1->UpdateRecord();


  ADOTab1e1—>Filtered=false;


  void _fastcall TForm 1::ServerSocket1 Listen(TObject


  *Sender,


  TCustomWinSocket*Socket)


  Memo I—>Lines—>Add(


  void _ßstcall TForrn 1::ServerSocket1 Clientl)isconnect


  (TObject*Sender,


  TCustomWinSocket*Socket)


  Mem01—>Lines—>Add("B,*P!


  void __fistcall TForrnl::XI Click(TObject*Sender)


  Application—>Terminate();


上一篇 下一篇