Deutsch English
Alphabetischer Index
Array-Funktionen
CGI-Funktionen
Datentypen
Datums/Uhrzeit-Funktionen
Debugging
Operatoren
Ramtext-Funktionen
Selektion
Socket-Funktionen
  • closesock()
  • getsock()
  • opensock()
  • putsock()
  • server()
    Sonstige-Funktionen
    Sprachelemente
    Statistik-Funktionen
    Stream-Funktionen
    String-Funktionen
    System-Funktionen
    Tabellen-Funktionen
    Text-Funktionen
    Volltext-Funktionen
    Zahlen-Funktionen
    Home    Überblick    Suche    Impressum    Kontakt    Mitglieder
    Themenkomplex Socket-Funktionen
    Funktion putsock()
    Kurz Schreibt in eine bestehende TCP-Stream-Verbindung
    Syntax putSock(socket : INTEGER; VAR p : { CHAR[] | BYTE[] }; maxchars : INTEGER) : INTEGER
    Parameter socket : von openSock() generiertes Socket-Handle
    p : beliebig grosses Ein-Zeichen-Array, entweder vom Typ CHAR oder BYTE
    maxchars : Anzahl der auszugebenden Bytes / Zeichen
    Ergebnis Anzahl der tatsächlich geschriebenen Bytes / Zeichen
    Siehe auch:
    opensock() closesock() getsock()
    Beschreibung putSock() schreibt die im Array liegenden Zeichen in das Socket-Handle.

    Beispiel 1: SMTP-Client

    Ein SMTP Client

    PROCEDURE send_str(s : INTEGER; l : STRING);
    VAR p : CHAR[1000];
      p[0]:=l+^M+^J; PutSock(s,p,length(l)+2)
      cgiwriteln('> '+l)
    ENDPROC
    PROCEDURE recv_str(s : INTEGER) : STRING;
    VAR p : CHAR[1000];
    VAR i : INTEGER;
    VAR res : STRING;
      nloop(i,GetSock(s,p,1000)-1,res:=res+p[i]);
      RETURN res
    ENDPROC
    
    PROCEDURE Main;
    VAR p : CHAR[1000];
    VAR i : INTEGER;
      cgiclosebuffer;
      cgiwriteln('content-type: text/plain');
      cgiwriteln('');
      IF i:=OpenSock('mail.tdb-engine.de:25') THEN
        cgiwriteln(recv_str(i));
        send_str(i,'HELO mail.tdb.de');
        cgiwriteln(recv_str(i));
        send_str(i,'MAIL FROM:test@tdb-engine.de');
        cgiwriteln(recv_str(i));
        send_str(i,'RCPT TO:test2@tdb-engine.de');
        cgiwriteln(recv_str(i));
        send_str(i,'DATA')
        cgiwriteln(recv_str(i));
        send_str(i,'Das ist ein kleiner Test.');
        send_str(i,'Und das ist die zweite Zeile');
        send_str(i,'.');
        cgiwriteln(recv_str(i));
        send_str(i,'QUIT');
        cgiwriteln(recv_str(i));
        CloseSock(i)
      ELSE
        cgiwriteln('done.')
      END
    ENDPROC
    


    tdbengine chat
    irc.tdbengine.org
    #tdbengine

       Copyright © 2003-2004 tdb Software Service GmbH
       Alle rechte vorbehalten. / All rights reserved
       Letzte Änderung: 21.10.2004
    {Fehler für :execmacro{execmacro="sessionspy"}