Solved

WHAT'S THE BEST: IDTCPCLIENT, IDTCPSERVER === OR === TCPCLIENT, TCPSERVER

Posted on 2006-07-11
3
1,176 Views
Last Modified: 2010-04-05
I WOULD LIKE TO KNOW:

WHAT'S THE DIFERENCE? IDTCPCLIENT, IDTCPSERVER ====== TCPCLIENT, TCPSERVER
0
Comment
Question by:rafaelrgl
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 2
3 Comments
 
LVL 17

Expert Comment

by:TheRealLoki
ID: 17086502
what component package are TCPClient, TCPserver from?

Indy is blocking, ie. you say
s := IdTCPClient1.IOHandler.ReadString;
showmessage(s);

the showmessage line will not occur until indy has received the string
if, for example you were using a non-blocking componet set such as Fracois Piette's ICS
you would use the OnDataAvailable event, and use a buffer, and showthemessage once you had received an end of string delimiter (e.g. #1 or #13#10)
(you can change it to "linemode" to make this as easy as indy)

The most popular TCP components are (in no particular order)
Indy's TidTCPClient, TidTCPServer
ICS TWSocket, TWSocketServer
Delphi's native TSocket and TServerSocket

0
 
LVL 1

Author Comment

by:rafaelrgl
ID: 17096228
TCPClient and TCPServer is from Borland Internet Components ( dclnet70.bpl )
0
 
LVL 17

Accepted Solution

by:
TheRealLoki earned 400 total points
ID: 17096488
oh right, delphi 7. yeah, they're almost the same as the TSocket and TSocketServer from previous versions of delphi.
They can be blocking or non-blocking whereas Indy is blocking
Indy is a 3rd party component set.
Probably more demos for Indy than borland's TTCPClient and TTCPServer, but Indy has some flakey versions.
The Indy9 that ships with delphi is not really supported anymore.
The Indy 10.0.5.2 version had some big changes, and some horrid bugs.
The latest snapshot Indy 10 is reasonably stable for me, but does not have many demos for it.
In saying that, I have made several demos for various versions of Indy, including the latest, and it's pretty easy to learn and work with
0

Featured Post

What does it mean to be "Always On"?

Is your cloud always on? With an Always On cloud you won't have to worry about downtime for maintenance or software application code updates, ensuring that your bottom line isn't affected.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

A lot of questions regard threads in Delphi.   One of the more specific questions is how to show progress of the thread.   Updating a progressbar from inside a thread is a mistake. A solution to this would be to send a synchronized message to the…
Have you ever had your Delphi form/application just hanging while waiting for data to load? This is the article to read if you want to learn some things about adding threads for data loading in the background. First, I'll setup a general applica…
Monitoring a network: why having a policy is the best policy? Michael Kulchisky, MCSE, MCSA, MCP, VTSP, VSP, CCSP outlines the enormous benefits of having a policy-based approach when monitoring medium and large networks. Software utilized in this v…
Sometimes it takes a new vantage point, apart from our everyday security practices, to truly see our Active Directory (AD) vulnerabilities. We get used to implementing the same techniques and checking the same areas for a breach. This pattern can re…
Suggested Courses
Course of the Month3 days, 23 hours left to enroll

630 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question