delphi7 winsock

TCP通讯

      由于delphi的SOCKET组件在默认的情况下是没有被添加大组件库中的,如果你没有使用过SOCKET组件,在打开时就会提示TClientSocket或TServerSocket等控件没有被声明而不能编译通过;

解决办法:

添加组件草开发环境里面component->install   package->add->"C:\Program   Files\Borland\Delphi7\Bin\dclsockets70.bpl" 添加后在组件Internet页面可以看到TSocketClient和TSocketServer控件

客户端TSocketClient需要映射连接OnConnect、断开OnDisconnect及读取OnRead消息三个事件,服务器端TSocketServer也需要对应的映射监控是否有客户端连接上的OnClientConnect事件,客户端断开OnClientDisconnect事件及读取客户端数据的OnClientRead

服务器端TSocketServer只需提供客户端的连接端口ServerSocket.Port,然后打开ServerSocket.Open();就可以供客户端连接了;然后那三个事件就分别来处理连接时,断开时,及读取消息时的事件;

procedure TForm1.OnClientConnect(Sender: TObject; Socket: TCustomWinSocket);                                                                  

这里Socket就是连接上的套接字,通过它可以获取远程客户端IP及端口,分别是Socket.RemoteAddress和Socket.Port;

procedure TForm1.OnClientDisconnect(Sender: TObject;
Socket: TCustomWinSocket);                     通过socket判断哪些客户端已经断开了

procedure TForm1.OnClientRead(Sender: TObject; Socket: TCustomWinSocket); 用该事件来接收客户端发来的数据,Socket.ReceiveText,是以字符串形式接收的,当然发送也是以字符串形式发送的CustomWinSocket[Socket].SendText(string);这里的CustomWinSocket就是定义的TCustomWinSocket类,当然在实际应用过程中接收和发送数据都要有一定的规范,所以要掌握一些字符串和数组,字节之间的转换。

    客户端TSocketClient需提供指定远程服务器地址和端口才能连接远程服务器,远程服务器地址一般是服务器IP,ClientSocket1.Address和ClientSocket1.Port,然后打开clientSocket1.Open();只要服务器将端口打开了就可以连接了;然后那三个事件就和服务器的三个事件一样,分别来处理连接时,断开时,及读取消息时的事件;不过客户端读取和服务器读取数据有一点点不同,就是它接收数据是以无类型的Buf来接收的,Socket.Receivebuf(RecBuf,200);这里的RecBuf:array[0..255] of char;是个字符数组,最后显示时需用StrPas函数转换了显示;当然这里接收也可以用其他形式存储,根据实际需要选择。

    下面的程序非常的简单,只是一个在服务器和客户机之间建立连接并通讯的程序。
      
      我们使用TServerSocket组件来建立服务器端的程序。
      它包含两个memo组件,用来分别处理接收到的数据和发送的数据,然后再在窗体上方一个TServerSocket组件,ServerType设置为stNonBlocking,Port设置为100,active设置为true,写几句简单的代码如下:
DELPHI7 TCP、UDP通讯(winsock)(转) - liang_liu99 - 哈是浮云的计算机技术博客 {
DELPHI7 TCP、UDP通讯(winsock)(转) - liang_liu99 - 哈是浮云的计算机技术博客     作者:wudi_1982
DELPHI7 TCP、UDP通讯(winsock)(转) - liang_liu99 - 哈是浮云的计算机技术博客     联系方式:wudi_1982@hotmail.com
DELPHI7 TCP、UDP通讯(winsock)(转) - liang_liu99 - 哈是浮云的计算机技术博客     转载请著名出处
DELPHI7 TCP、UDP通讯(winsock)(转) - liang_liu99 - 哈是浮云的计算机技术博客}

DELPHI7 TCP、UDP通讯(winsock)(转) - liang_liu99 - 哈是浮云的计算机技术博客unit Unit1;
DELPHI7 TCP、UDP通讯(winsock)(转) - liang_liu99 - 哈是浮云的计算机技术博客
DELPHI7 TCP、UDP通讯(winsock)(转) - liang_liu99 - 哈是浮云的计算机技术博客
interface
DELPHI7 TCP、UDP通讯(winsock)(转) - liang_liu99 - 哈是浮云的计算机技术博客
DELPHI7 TCP、UDP通讯(winsock)(转) - liang_liu99 - 哈是浮云的计算机技术博客uses
DELPHI7 TCP、UDP通讯(winsock)(转) - liang_liu99 - 哈是浮云的计算机技术博客   Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
DELPHI7 TCP、UDP通讯(winsock)(转) - liang_liu99 - 哈是浮云的计算机技术博客   Dialogs, ComCtrls, StdCtrls, ScktComp;
DELPHI7 TCP、UDP通讯(winsock)(转) - liang_liu99 - 哈是浮云的计算机技术博客
DELPHI7 TCP、UDP通讯(winsock)(转) - liang_liu99 - 哈是浮云的计算机技术博客type
DELPHI7 TCP、UDP通讯(winsock)(转) - liang_liu99 - 哈是浮云的计算机技术博客   TForm1 
=   class (TForm)
DELPHI7 TCP、UDP通讯(winsock)(转) - liang_liu99 - 哈是浮云的计算机技术博客     ServerSocket1: TServerSocket;
DELPHI7 TCP、UDP通讯(winsock)(转) - liang_liu99 - 哈是浮云的计算机技术博客     Memo1: TMemo;
DELPHI7 TCP、UDP通讯(winsock)(转) - liang_liu99 - 哈是浮云的计算机技术博客     Button1: TButton;
DELPHI7 TCP、UDP通讯(winsock)(转) - liang_liu99 - 哈是浮云的计算机技术博客     StatusBar1: TStatusBar;
DELPHI7 TCP、UDP通讯(winsock)(转) - liang_liu99 - 哈是浮云的计算机技术博客     Memo2: TMemo;
DELPHI7 TCP、UDP通讯(winsock)(转) - liang_liu99 - 哈是浮云的计算机技术博客     procedure ServerSocket1ClientConnect(Sender: TObject;
DELPHI7 TCP、UDP通讯(winsock)(转) - liang_liu99 - 哈是浮云的计算机技术博客       Socket: TCustomWinSocket);
DELPHI7 TCP、UDP通讯(winsock)(转) - liang_liu99 - 哈是浮云的计算机技术博客     procedure ServerSocket1ClientDisconnect(Sender: TObject;
DELPHI7 TCP、UDP通讯(winsock)(转) - liang_liu99 - 哈是浮云的计算机技术博客       Socket: TCustomWinSocket);
DELPHI7 TCP、UDP通讯(winsock)(转) - liang_liu99 - 哈是浮云的计算机技术博客     procedure ServerSocket1ClientRead(Sender: TObject;
DELPHI7 TCP、UDP通讯(winsock)(转) - liang_liu99 - 哈是浮云的计算机技术博客       Socket: TCustomWinSocket);
DELPHI7 TCP、UDP通讯(winsock)(转) - liang_liu99 - 哈是浮云的计算机技术博客     procedure Button1Click(Sender: TObject);
DELPHI7 TCP、UDP通讯(winsock)(转) - liang_liu99 - 哈是浮云的计算机技术博客  
private
DELPHI7 TCP、UDP通讯(winsock)(转) - liang_liu99 - 哈是浮云的计算机技术博客    
{ Private declarations }
DELPHI7 TCP、UDP通讯(winsock)(转) - liang_liu99 - 哈是浮云的计算机技术博客  
public
DELPHI7 TCP、UDP通讯(winsock)(转) - liang_liu99 - 哈是浮云的计算机技术博客    
{ Public declarations }
DELPHI7 TCP、UDP通讯(winsock)(转) - liang_liu99 - 哈是浮云的计算机技术博客   end;
DELPHI7 TCP、UDP通讯(winsock)(转) - liang_liu99 - 哈是浮云的计算机技术博客
DELPHI7 TCP、UDP通讯(winsock)(转) - liang_liu99 - 哈是浮云的计算机技术博客var
DELPHI7 TCP、UDP通讯(winsock)(转) - liang_liu99 - 哈是浮云的计算机技术博客   Form1: TForm1;
DELPHI7 TCP、UDP通讯(winsock)(转) - liang_liu99 - 哈是浮云的计算机技术博客
DELPHI7 TCP、UDP通讯(winsock)(转) - liang_liu99 - 哈是浮云的计算机技术博客implementation
DELPHI7 TCP、UDP通讯(winsock)(转) - liang_liu99 - 哈是浮云的计算机技术博客
DELPHI7 TCP、UDP通讯(winsock)(转) - liang_liu99 - 哈是浮云的计算机技术博客
{$R *.dfm}
DELPHI7 TCP、UDP通讯(winsock)(转) - liang_liu99 - 哈是浮云的计算机技术博客
DELPHI7 TCP、UDP通讯(winsock)(转) - liang_liu99 - 哈是浮云的计算机技术博客procedure TForm1.ServerSocket1ClientConnect(Sender: TObject;
DELPHI7 TCP、UDP通讯(winsock)(转) - liang_liu99 - 哈是浮云的计算机技术博客   Socket: TCustomWinSocket);
DELPHI7 TCP、UDP通讯(winsock)(转) - liang_liu99 - 哈是浮云的计算机技术博客begin
DELPHI7 TCP、UDP通讯(winsock)(转) - liang_liu99 - 哈是浮云的计算机技术博客StatusBar1.SimpleText :
=   ' connect ' ;
DELPHI7 TCP、UDP通讯(winsock)(转) - liang_liu99 - 哈是浮云的计算机技术博客end;
DELPHI7 TCP、UDP通讯(winsock)(转) - liang_liu99 - 哈是浮云的计算机技术博客
DELPHI7 TCP、UDP通讯(winsock)(转) - liang_liu99 - 哈是浮云的计算机技术博客procedure TForm1.ServerSocket1ClientDisconnect(Sender: TObject;
DELPHI7 TCP、UDP通讯(winsock)(转) - liang_liu99 - 哈是浮云的计算机技术博客   Socket: TCustomWinSocket);
DELPHI7 TCP、UDP通讯(winsock)(转) - liang_liu99 - 哈是浮云的计算机技术博客begin
DELPHI7 TCP、UDP通讯(winsock)(转) - liang_liu99 - 哈是浮云的计算机技术博客   StatusBar1.SimpleText :
=   ' disconnect ' ;
DELPHI7 TCP、UDP通讯(winsock)(转) - liang_liu99 - 哈是浮云的计算机技术博客end;
DELPHI7 TCP、UDP通讯(winsock)(转) - liang_liu99 - 哈是浮云的计算机技术博客
DELPHI7 TCP、UDP通讯(winsock)(转) - liang_liu99 - 哈是浮云的计算机技术博客procedure TForm1.ServerSocket1ClientRead(Sender: TObject;
DELPHI7 TCP、UDP通讯(winsock)(转) - liang_liu99 - 哈是浮云的计算机技术博客   Socket: TCustomWinSocket);
DELPHI7 TCP、UDP通讯(winsock)(转) - liang_liu99 - 哈是浮云的计算机技术博客begin
DELPHI7 TCP、UDP通讯(winsock)(转) - liang_liu99 - 哈是浮云的计算机技术博客    Memo1.Lines.Add( Socket.ReceiveText);
DELPHI7 TCP、UDP通讯(winsock)(转) - liang_liu99 - 哈是浮云的计算机技术博客end;
DELPHI7 TCP、UDP通讯(winsock)(转) - liang_liu99 - 哈是浮云的计算机技术博客
DELPHI7 TCP、UDP通讯(winsock)(转) - liang_liu99 - 哈是浮云的计算机技术博客procedure TForm1.Button1Click(Sender: TObject);
DELPHI7 TCP、UDP通讯(winsock)(转) - liang_liu99 - 哈是浮云的计算机技术博客begin
DELPHI7 TCP、UDP通讯(winsock)(转) - liang_liu99 - 哈是浮云的计算机技术博客   
if  ServerSocket1.Active then
DELPHI7 TCP、UDP通讯(winsock)(转) - liang_liu99 - 哈是浮云的计算机技术博客      ServerSocket1.Socket.Connections[
0 ].SendText(Memo2.Text);
DELPHI7 TCP、UDP通讯(winsock)(转) - liang_liu99 - 哈是浮云的计算机技术博客end;
DELPHI7 TCP、UDP通讯(winsock)(转) - liang_liu99 - 哈是浮云的计算机技术博客
DELPHI7 TCP、UDP通讯(winsock)(转) - liang_liu99 - 哈是浮云的计算机技术博客end.
DELPHI7 TCP、UDP通讯(winsock)(转) - liang_liu99 - 哈是浮云的计算机技术博客

然后编译程序。

客户端实现:
    客户端相对复杂一些,因为我们要有一个用来接收服务器IP地址的edit,以及端口地址的edit。

DELPHI7 TCP、UDP通讯(winsock)(转) - liang_liu99 - 哈是浮云的计算机技术博客 {
DELPHI7 TCP、UDP通讯(winsock)(转) - liang_liu99 - 哈是浮云的计算机技术博客     作者:wudi_1982
DELPHI7 TCP、UDP通讯(winsock)(转) - liang_liu99 - 哈是浮云的计算机技术博客     联系方式:wudi_1982@hotmail.com
DELPHI7 TCP、UDP通讯(winsock)(转) - liang_liu99 - 哈是浮云的计算机技术博客     转载请著名出处
DELPHI7 TCP、UDP通讯(winsock)(转) - liang_liu99 - 哈是浮云的计算机技术博客}

DELPHI7 TCP、UDP通讯(winsock)(转) - liang_liu99 - 哈是浮云的计算机技术博客unit Unit1;
DELPHI7 TCP、UDP通讯(winsock)(转) - liang_liu99 - 哈是浮云的计算机技术博客
DELPHI7 TCP、UDP通讯(winsock)(转) - liang_liu99 - 哈是浮云的计算机技术博客
interface
DELPHI7 TCP、UDP通讯(winsock)(转) - liang_liu99 - 哈是浮云的计算机技术博客
DELPHI7 TCP、UDP通讯(winsock)(转) - liang_liu99 - 哈是浮云的计算机技术博客uses
DELPHI7 TCP、UDP通讯(winsock)(转) - liang_liu99 - 哈是浮云的计算机技术博客   Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
DELPHI7 TCP、UDP通讯(winsock)(转) - liang_liu99 - 哈是浮云的计算机技术博客   Dialogs, ComCtrls, StdCtrls, ScktComp;
DELPHI7 TCP、UDP通讯(winsock)(转) - liang_liu99 - 哈是浮云的计算机技术博客
DELPHI7 TCP、UDP通讯(winsock)(转) - liang_liu99 - 哈是浮云的计算机技术博客type
DELPHI7 TCP、UDP通讯(winsock)(转) - liang_liu99 - 哈是浮云的计算机技术博客   TForm1 
=   class (TForm)
DELPHI7 TCP、UDP通讯(winsock)(转) - liang_liu99 - 哈是浮云的计算机技术博客     ClientSocket1: TClientSocket;
DELPHI7 TCP、UDP通讯(winsock)(转) - liang_liu99 - 哈是浮云的计算机技术博客     edIp: TEdit;
DELPHI7 TCP、UDP通讯(winsock)(转) - liang_liu99 - 哈是浮云的计算机技术博客     Label1: TLabel;
DELPHI7 TCP、UDP通讯(winsock)(转) - liang_liu99 - 哈是浮云的计算机技术博客     Label2: TLabel;
DELPHI7 TCP、UDP通讯(winsock)(转) - liang_liu99 - 哈是浮云的计算机技术博客     edPort: TEdit;
DELPHI7 TCP、UDP通讯(winsock)(转) - liang_liu99 - 哈是浮云的计算机技术博客     StatusBar1: TStatusBar;
DELPHI7 TCP、UDP通讯(winsock)(转) - liang_liu99 - 哈是浮云的计算机技术博客     Memo1: TMemo;
DELPHI7 TCP、UDP通讯(winsock)(转) - liang_liu99 - 哈是浮云的计算机技术博客     btnConnect: TButton;
DELPHI7 TCP、UDP通讯(winsock)(转) - liang_liu99 - 哈是浮云的计算机技术博客     btnSent: TButton;
DELPHI7 TCP、UDP通讯(winsock)(转) - liang_liu99 - 哈是浮云的计算机技术博客     btnDisconnect: TButton;
DELPHI7 TCP、UDP通讯(winsock)(转) - liang_liu99 - 哈是浮云的计算机技术博客     Memo2: TMemo;
DELPHI7 TCP、UDP通讯(winsock)(转) - liang_liu99 - 哈是浮云的计算机技术博客     procedure ClientSocket1Connect(Sender: TObject;
DELPHI7 TCP、UDP通讯(winsock)(转) - liang_liu99 - 哈是浮云的计算机技术博客       Socket: TCustomWinSocket);
DELPHI7 TCP、UDP通讯(winsock)(转) - liang_liu99 - 哈是浮云的计算机技术博客     procedure btnConnectClick(Sender: TObject);
DELPHI7 TCP、UDP通讯(winsock)(转) - liang_liu99 - 哈是浮云的计算机技术博客     procedure btnDisconnectClick(Sender: TObject);
DELPHI7 TCP、UDP通讯(winsock)(转) - liang_liu99 - 哈是浮云的计算机技术博客     procedure btnSentClick(Sender: TObject);
DELPHI7 TCP、UDP通讯(winsock)(转) - liang_liu99 - 哈是浮云的计算机技术博客     procedure ClientSocket1Read(Sender: TObject; Socket: TCustomWinSocket);
DELPHI7 TCP、UDP通讯(winsock)(转) - liang_liu99 - 哈是浮云的计算机技术博客  
private
DELPHI7 TCP、UDP通讯(winsock)(转) - liang_liu99 - 哈是浮云的计算机技术博客    
{ Private declarations }
DELPHI7 TCP、UDP通讯(winsock)(转) - liang_liu99 - 哈是浮云的计算机技术博客  
public
DELPHI7 TCP、UDP通讯(winsock)(转) - liang_liu99 - 哈是浮云的计算机技术博客    
{ Public declarations }
DELPHI7 TCP、UDP通讯(winsock)(转) - liang_liu99 - 哈是浮云的计算机技术博客   end;
DELPHI7 TCP、UDP通讯(winsock)(转) - liang_liu99 - 哈是浮云的计算机技术博客
DELPHI7 TCP、UDP通讯(winsock)(转) - liang_liu99 - 哈是浮云的计算机技术博客var
DELPHI7 TCP、UDP通讯(winsock)(转) - liang_liu99 - 哈是浮云的计算机技术博客   Form1: TForm1;
DELPHI7 TCP、UDP通讯(winsock)(转) - liang_liu99 - 哈是浮云的计算机技术博客
DELPHI7 TCP、UDP通讯(winsock)(转) - liang_liu99 - 哈是浮云的计算机技术博客implementation
DELPHI7 TCP、UDP通讯(winsock)(转) - liang_liu99 - 哈是浮云的计算机技术博客
DELPHI7 TCP、UDP通讯(winsock)(转) - liang_liu99 - 哈是浮云的计算机技术博客
{$R *.dfm}
DELPHI7 TCP、UDP通讯(winsock)(转) - liang_liu99 - 哈是浮云的计算机技术博客
DELPHI7 TCP、UDP通讯(winsock)(转) - liang_liu99 - 哈是浮云的计算机技术博客procedure TForm1.ClientSocket1Connect(Sender: TObject;
DELPHI7 TCP、UDP通讯(winsock)(转) - liang_liu99 - 哈是浮云的计算机技术博客   Socket: TCustomWinSocket);
DELPHI7 TCP、UDP通讯(winsock)(转) - liang_liu99 - 哈是浮云的计算机技术博客begin
DELPHI7 TCP、UDP通讯(winsock)(转) - liang_liu99 - 哈是浮云的计算机技术博客    StatusBar1.SimpleText :
=   ' 连接成功 ' ;
DELPHI7 TCP、UDP通讯(winsock)(转) - liang_liu99 - 哈是浮云的计算机技术博客end;
DELPHI7 TCP、UDP通讯(winsock)(转) - liang_liu99 - 哈是浮云的计算机技术博客
DELPHI7 TCP、UDP通讯(winsock)(转) - liang_liu99 - 哈是浮云的计算机技术博客procedure TForm1.btnConnectClick(Sender: TObject);
DELPHI7 TCP、UDP通讯(winsock)(转) - liang_liu99 - 哈是浮云的计算机技术博客begin
DELPHI7 TCP、UDP通讯(winsock)(转) - liang_liu99 - 哈是浮云的计算机技术博客   
if  not ClientSocket1.Active then
DELPHI7 TCP、UDP通讯(winsock)(转) - liang_liu99 - 哈是浮云的计算机技术博客    begin
DELPHI7 TCP、UDP通讯(winsock)(转) - liang_liu99 - 哈是浮云的计算机技术博客      ClientSocket1.Host :
=  edIp.Text;
DELPHI7 TCP、UDP通讯(winsock)(转) - liang_liu99 - 哈是浮云的计算机技术博客      ClientSocket1.Port :
=  StrToInt(edPort.Text);
DELPHI7 TCP、UDP通讯(winsock)(转) - liang_liu99 - 哈是浮云的计算机技术博客      ClientSocket1.Open;
DELPHI7 TCP、UDP通讯(winsock)(转) - liang_liu99 - 哈是浮云的计算机技术博客      (Sender 
as  TButton).Enabled : =   false ;
DELPHI7 TCP、UDP通讯(winsock)(转) - liang_liu99 - 哈是浮云的计算机技术博客      btnDisconnect.Enabled :
=   true ;
DELPHI7 TCP、UDP通讯(winsock)(转) - liang_liu99 - 哈是浮云的计算机技术博客    end;
DELPHI7 TCP、UDP通讯(winsock)(转) - liang_liu99 - 哈是浮云的计算机技术博客end;
DELPHI7 TCP、UDP通讯(winsock)(转) - liang_liu99 - 哈是浮云的计算机技术博客
DELPHI7 TCP、UDP通讯(winsock)(转) - liang_liu99 - 哈是浮云的计算机技术博客procedure TForm1.btnDisconnectClick(Sender: TObject);
DELPHI7 TCP、UDP通讯(winsock)(转) - liang_liu99 - 哈是浮云的计算机技术博客begin
DELPHI7 TCP、UDP通讯(winsock)(转) - liang_liu99 - 哈是浮云的计算机技术博客   
if  ClientSocket1.Active then
DELPHI7 TCP、UDP通讯(winsock)(转) - liang_liu99 - 哈是浮云的计算机技术博客    begin
DELPHI7 TCP、UDP通讯(winsock)(转) - liang_liu99 - 哈是浮云的计算机技术博客      ClientSocket1.Close;
DELPHI7 TCP、UDP通讯(winsock)(转) - liang_liu99 - 哈是浮云的计算机技术博客      btnDisconnect.Enabled :
=   false ;
DELPHI7 TCP、UDP通讯(winsock)(转) - liang_liu99 - 哈是浮云的计算机技术博客      btnConnect.Enabled :
=   true ;
DELPHI7 TCP、UDP通讯(winsock)(转) - liang_liu99 - 哈是浮云的计算机技术博客
DELPHI7 TCP、UDP通讯(winsock)(转) - liang_liu99 - 哈是浮云的计算机技术博客    end;
DELPHI7 TCP、UDP通讯(winsock)(转) - liang_liu99 - 哈是浮云的计算机技术博客end;
DELPHI7 TCP、UDP通讯(winsock)(转) - liang_liu99 - 哈是浮云的计算机技术博客
DELPHI7 TCP、UDP通讯(winsock)(转) - liang_liu99 - 哈是浮云的计算机技术博客procedure TForm1.btnSentClick(Sender: TObject);
DELPHI7 TCP、UDP通讯(winsock)(转) - liang_liu99 - 哈是浮云的计算机技术博客begin
DELPHI7 TCP、UDP通讯(winsock)(转) - liang_liu99 - 哈是浮云的计算机技术博客   
if  ClientSocket1.Active then
DELPHI7 TCP、UDP通讯(winsock)(转) - liang_liu99 - 哈是浮云的计算机技术博客      ClientSocket1.Socket.SendText(Memo1.Text)
DELPHI7 TCP、UDP通讯(winsock)(转) - liang_liu99 - 哈是浮云的计算机技术博客end;
DELPHI7 TCP、UDP通讯(winsock)(转) - liang_liu99 - 哈是浮云的计算机技术博客
DELPHI7 TCP、UDP通讯(winsock)(转) - liang_liu99 - 哈是浮云的计算机技术博客procedure TForm1.ClientSocket1Read(Sender: TObject;
DELPHI7 TCP、UDP通讯(winsock)(转) - liang_liu99 - 哈是浮云的计算机技术博客   Socket: TCustomWinSocket);
DELPHI7 TCP、UDP通讯(winsock)(转) - liang_liu99 - 哈是浮云的计算机技术博客begin
DELPHI7 TCP、UDP通讯(winsock)(转) - liang_liu99 - 哈是浮云的计算机技术博客    Memo2.Lines.Add(Socket.ReceiveText);
DELPHI7 TCP、UDP通讯(winsock)(转) - liang_liu99 - 哈是浮云的计算机技术博客end;
DELPHI7 TCP、UDP通讯(winsock)(转) - liang_liu99 - 哈是浮云的计算机技术博客
DELPHI7 TCP、UDP通讯(winsock)(转) - liang_liu99 - 哈是浮云的计算机技术博客end
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值