Rapid-Q Documentation by William Yu (c)1999-2000 | Appendix A: QSOCKET

# QSOCKET Component

  QSocket provides an easy to use interface to communicate between server/client with sockets.
  QSocket Properties

  Field | Type | R/W | Default | Support

  Family | INTEGER | RW | AF_INET | W
  | Family specifies the address family.
  LParam | INTEGER | RW | FD_CONNECT | W
  | LParam specifies the message to capture when you set WMessage and handle the message processing by assigning a new WndProc to your form.
  MySocket | INTEGER | R |  | WXG
  | MySocket stores the result of operations such as Open. So instead of using the return value of Open, you can use the property MySocket.
  Parent | QFORM | W |  | W
  Protocol | INTEGER | RW | IPPROTO_IP | W
  Tag | INTEGER | RW |  | WXG
  Transferred | INTEGER | R |  | WXG
  Type | INTEGER | RW | SOCK_STREAM | W
  WMessage | INTEGER | RW | 0 | W
  | WMessage specifies a user defined message to be passed to your form for non-blocking calls, ie. Connecting.

  QSocket Methods

  Method | Type | Description | Params | Support

  Accept | FUNCTION ClientSock%(Socket%) | Accepts Client Connection | 1 | WXG
  Close | SUB (Socket%) | Closes Socket% file descriptor | 1 | WXG
  Connect | FUNCTION Sock%(ServerName$, PortNum%) | Connect to server on PortNum% | 2 | WXG
  ConnectionReady | FUNCTION Bool%(Sock%) | True/False if connection pending | 1 | WXG
  GetHostIP | FUNCTION AS STRING | Returns host IP Address | 0 | WXG
  GetHostName | FUNCTION AS STRING | Returns host name | 0 | WXG
  GetPeerName | FUNCTION GetPeerName$(Socket%) | Returns peer name | 1 | WXG
  IsClientReady | FUNCTION Bool%(Sock%, ClientSock%) | True/False if client is sending data | 2 | WXG
  IsServerReady | FUNCTION Bool%(Sock%) | True/False if server is sending data | 1 | WXG
  Open | FUNCTION Sock%(PortNum%) | Open TCP server on PortNum% | 1 | WXG
  Peek | FUNCTION Peek$(Socket%, NumBytes%) | Peek information coming from socket, but do not clear. Win32 | 2 | W
  Read | FUNCTION Message$(Socket%, NumBytes%) | Read NumBytes% | 2 | WXG
  ReadByte | FUNCTION (Socket%) AS BYTE | Read a single byte | 2 | WXG
  ReadLine | FUNCTION Message$(Socket%) | Read complete line | 1 | WXG
  Write | SUB (Socket%, Message$, NumBytes%) | Sends NumBytes% from Message$ | 3 | WXG
  WriteByte | SUB (Socket%, B AS BYTE) | Sends a single byte | 2 | WXG
  WriteLine | FUNCTION Bytes%(Socket%, Message$) | Send Message$ | 2 | WXG

  QSocket Examples

      See the chatserver.bas and chatclient.bas (or chatserv.bas and chatcli.bas for Windows)
      included in the Rapid-Q distribution.
      Also take a look at http.bas included in the Rapid-Q for Windows distribution.

  Prev Component | Contents | Next Component