Sockets Pascal中的套接字

Sockets Pascal中的套接字,sockets,pascal,Sockets,Pascal,如何在Pascal中使用网络套接字? 以下是一个来自 如果您使用的是Delphi,我强烈推荐sockets,这是一组用于轻松操作sockets和许多其他internet协议(HTTP、FTP、NTP、POP3等)的类。您不能将OpenSSL与Delphi 2007附带的Indy 10.5版一起使用。您必须从下载版本10,6并将其安装到IDE中 请注意,其他软件包可能会使用Indy,如ReObject,因此它们也必须重新编译,由于交叉引用,这可能会很棘手。如果您使用的是FPC或Lazarus(基本

如何在Pascal中使用网络套接字?
以下是一个来自


如果您使用的是Delphi,我强烈推荐sockets,这是一组用于轻松操作sockets和许多其他internet协议(HTTP、FTP、NTP、POP3等)的类。

您不能将OpenSSL与Delphi 2007附带的Indy 10.5版一起使用。您必须从下载版本10,6并将其安装到IDE中


请注意,其他软件包可能会使用Indy,如ReObject,因此它们也必须重新编译,由于交叉引用,这可能会很棘手。

如果您使用的是FPC或Lazarus(基本上是FPC的rad IDE和delphi的克隆),则可以使用套接字库。这太神奇了。

你能纠正一下吗?请你链接到这个:?然后特别是-10.x版本。
program daytime;

{ Simple client program }

uses
   sockets, inetaux, myerror;

const
   RemotePort : Word = 13;

var
   Sock : LongInt;
   sAddr : TInetSockAddr;
   sin, sout : Text;
   Line : String;

begin
   if ParamCount = 0 then GenError('Supply IP address as parameter.');

   with sAddr do
   begin
      Family := af_inet;
      Port := htons(RemotePort);
      Addr := StrToAddr(ParamStr(1));
      if Addr = 0 then GenError('Not a valid IP address.');
   end;

   Sock := Socket(af_inet, sock_stream, 0);
   if Sock = -1 then SockError('Socket: ');

   if not Connect(Sock, sAddr, sizeof(sAddr)) then SockError('Connect: ');
   Sock2Text(Sock, sin, sout);
   Reset(sin);
   Rewrite(sout);

   while not eof(sin) do   
   begin
      Readln(sin, Line);
      Writeln(Line);
   end;

   Close(sin);
   Close(sout);
   Shutdown(Sock, 2);
end.