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 ComponentContentsNext Component