2008-08-19 8 views

Antwort

4

Hier ist ein Beispiel aus http://www.bastisoft.de/programmierung/pascal/pasinet.html

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. 
+0

Können Sie korrigieren Sie bitte hier: http://www.bastisoft.de/programmierung/pascal/pasinet.html? –

0

Wenn Sie Delphi verwenden, ich Indy Steckdosen, eine Reihe von Klassen für die einfache Manipulation von Steckdosen und viele anderen Internet-Protokollen (HTTP, FTP, NTP sehr empfehlen , POP3 etc.)

+0

Und dann speziell die -10.x Version. –

0

Sie können OpenSSL nicht mit Indy Version 10.5 verwenden, das mit Delphi 2007 ausgeliefert wird. Sie müssen Version 10,6 von http://www.indyproject.org/ herunterladen und es int installieren o die IDE.

Beachten Sie, dass andere Pakete Indy wie RemObjects verwenden können und daher auch neu kompiliert werden müssen und dies kann aufgrund von Querverweisen schwierig sein.

1

Wenn Sie FPC oder Lazarus verwenden (was im Grunde eine IDE für FPC und ein Klon von Delphi ist), könnten Sie die Socket-Bibliothek Synapse verwenden. Es ist wunderbar.