\section{\class{wxTCPClient}}\label{wxtcpclient}

A wxTCPClient object represents the client part of a client-server conversation.
It emulates a DDE-style protocol, but uses TCP/IP which is available on most platforms.

A DDE-based implementation for Windows is available using \helpref{wxDDEClient}{wxddeclient}.

To create a client which can communicate with a suitable server,
you need to derive a class from wxTCPConnection and another from wxTCPClient.
The custom wxTCPConnection class will intercept communications in
a `conversation' with a server, and the custom wxTCPServer is required
so that a user-overridden \helpref{wxTCPClient::OnMakeConnection}{wxtcpclientonmakeconnection} member can return
a wxTCPConnection of the required class, when a connection is made.

\wxheading{Derived from}

wxClientBase\\
\helpref{wxObject}{wxobject}

\wxheading{Include files}

<wx/sckipc.h>

\wxheading{See also}

\helpref{wxTCPServer}{wxtcpserver}, \helpref{wxTCPConnection}{wxtcpconnection}, 
\helpref{Interprocess communications overview}{ipcoverview}

\latexignore{\rtfignore{\wxheading{Members}}}

\membersection{wxTCPClient::wxTCPClient}\label{wxtcpclientctor}

\func{}{wxTCPClient}{\void}

Constructs a client object.

\membersection{wxTCPClient::MakeConnection}\label{wxtcpclientmakeconnection}

\func{wxConnectionBase *}{MakeConnection}{\param{const wxString\& }{host}, \param{const wxString\& }{service}, \param{const wxString\& }{topic}}

Tries to make a connection with a server specified by the host
(a machine name under Unix), service name (must
contain an integer port number under Unix), and a topic string. If the
server allows a connection, a wxTCPConnection object will be returned.
The type of wxTCPConnection returned can be altered by overriding
the \helpref{wxTCPClient::OnMakeConnection}{wxtcpclientonmakeconnection} member to return your own
derived connection object.

\membersection{wxTCPClient::OnMakeConnection}\label{wxtcpclientonmakeconnection}

\func{wxConnectionBase *}{OnMakeConnection}{\void}

The type of \helpref{wxTCPConnection}{wxtcpconnection} returned from a \helpref{wxTCPClient::MakeConnection}{wxtcpclientmakeconnection} call can
be altered by deriving the {\bf OnMakeConnection} member to return your
own derived connection object. By default, a wxTCPConnection
object is returned.

The advantage of deriving your own connection class is that it will
enable you to intercept messages initiated by the server, such
as \helpref{wxTCPConnection::OnAdvise}{wxtcpconnectiononadvise}. You may also want to
store application-specific data in instances of the new class.

\membersection{wxTCPClient::ValidHost}\label{wxtcpclientvalidhost}

\func{bool}{ValidHost}{\param{const wxString\& }{host}}

Returns true if this is a valid host name, false otherwise.

