[twsocket] ICS group on social networks LinkedIn and FaceBook

2011-02-22 Thread Francois PIETTE

Hi !

Every ICS user is invited to be part of ICS-group on Linked-In. 
See http://www.linkedin.com/e/gis/136245
Why ? 
Just to have a little bit more visibility for everyone of us and for  ICS.


There is another one on FaceBook:
http://www.facebook.com/pages/ICS-Internet-Component-Suite/39493622127

btw: You may also be part of "Powered by Delphi" group on Linked-In.
http://www.linkedin.com/e/gis/48600

--
francois.pie...@overbyte.be
The author of the freeware multi-tier middleware MidWare
The author of the freeware Internet Component Suite (ICS)
http://www.overbyte.be


--
To unsubscribe or change your settings for TWSocket mailing list
please goto http://lists.elists.org/cgi-bin/mailman/listinfo/twsocket
Visit our website at http://www.overbyte.be


Re: [twsocket] SSL send emai using gmail?

2011-02-22 Thread Antol
Hello Zvone,

Thanks all, finally it works!

Tuesday, February 22, 2011, 4:28:23 PM, you wrote:

Z> See:

Z> http://wiki.overbyte.be/wiki/index.php/ICS_Download


-- 
Best regards,
 Antolmailto:spama...@mail.ru

--
To unsubscribe or change your settings for TWSocket mailing list
please goto http://lists.elists.org/cgi-bin/mailman/listinfo/twsocket
Visit our website at http://www.overbyte.be


Re: [twsocket] Why ICS prefers non-blocking sockets?

2011-02-22 Thread Francois PIETTE

It is all much better explained here why blocking is better:


Maybe you should not believe everything you read on a web page...
Maybe you should use one of those libraries...



So I am wondering why ICS prefers events when the code is
so much simpler without them?


That's simply wrong.

Event driven code is easier for a lot of things, except for simple demos.
Non-blocking, event driven programming offer a much better scalability. It 
has a learning curve which is much horizontal: you begin with something more 
complex than simplistic blocking programming model, but you stay almost at 
the same level of complexity even for larger applications while blocking 
mode quickly becomes a nightmare.


--
francois.pie...@overbyte.be
The author of the freeware multi-tier middleware MidWare
The author of the freeware Internet Component Suite (ICS)
http://www.overbyte.be


--
To unsubscribe or change your settings for TWSocket mailing list
please goto http://lists.elists.org/cgi-bin/mailman/listinfo/twsocket
Visit our website at http://www.overbyte.be


Re: [twsocket] Why ICS prefers non-blocking sockets?

2011-02-22 Thread Tobias Rapp
> It is all much better explained here why blocking is better:
> http://www.ararat.cz/synapse/doku.php/about

I would not say that blocking is "better". Programming with synchronous
functions needs less callbacks and thus gives more compact code at the cost
of performance. If this is OK depends on the requirements of your
application.

That said I think that the real question should be: "Why doesn't Delphi
improve support for asynchronous programming?" because there are other
programming languages that allow you to write asynchronous code without
explicit callbacks by supporting coroutines (see
http://en.wikipedia.org/wiki/Coroutine).

"Vala" is my current favourite language in that direction, all you have to do
there is to add a "yield" in front of calling asynchronous functions
and the compiler takes care of the rest (callback, state machine).

Code examples:
http://live.gnome.org/Vala/GIOSamples#Asynchronous_Stream_Reading
http://live.gnome.org/Vala/GIONetworkingSample#line-156

How I wish there would be a "yield" keyword in Delphi...

Regards,
Tobias

--
To unsubscribe or change your settings for TWSocket mailing list
please goto http://lists.elists.org/cgi-bin/mailman/listinfo/twsocket
Visit our website at http://www.overbyte.be


Re: [twsocket] Why ICS prefers non-blocking sockets?

2011-02-22 Thread Fastream Technologies
Let's say you are writing a multi-socket HTTP downloader such as the one in
the ICS demo. With sync/blocking sockets, you would have to launch multiple
threads per file. Why would you launch 4 threads for a 4Mbps DSL download
with thread syncronization hassle?

We use ICS async logic in our IQ Proxy Server (http://www.iqproxyserver.com)
to avoid "thread-hell". Most of the times, when you fire more than 1400
threads in Windows, it crashes. We have successfully tested 60k connections
in our proxy server thanks to ICS/async-winsocks!
 Regards,

SubZero
On Tue, Feb 22, 2011 at 3:26 PM, Zvone  wrote:

> When I looked at Indy and Ararat Synapse they both prefer blocking sockets
> to connect to text-based protocols like HTTP, POP, SMTP, FTP etc.
>
> The reason - because communication is flowed - you send command, you wait
> reply, if reply does not match you handle error. It is all nice
> line-by-line
> inline code.
>
> With ICS it uses events to reply to reply codes and non-blocking. But with
> this you lose - easy to follow code flow. If you really need to make it
> independent you simply put it in separate thread - both Indy and Synapse
> have their own way of solving this - Indy has special component for
> threading sockets and Synapse some kind of function that gets called every
> once in a while.
>
> It is all much better explained here why blocking is better:
> http://www.ararat.cz/synapse/doku.php/about
>
> So I am wondering why ICS prefers events when the code is so much simpler
> without them?
> --
> To unsubscribe or change your settings for TWSocket mailing list
> please goto http://lists.elists.org/cgi-bin/mailman/listinfo/twsocket
> Visit our website at http://www.overbyte.be
>
--
To unsubscribe or change your settings for TWSocket mailing list
please goto http://lists.elists.org/cgi-bin/mailman/listinfo/twsocket
Visit our website at http://www.overbyte.be


Re: [twsocket] Why ICS prefers non-blocking sockets?

2011-02-22 Thread Angus Robertson - Magenta Systems Ltd
> So I am wondering why ICS prefers events when the code is so much 
> simpler without them?

ICS does not prefer events, it offers both blocking synchronous and
non-blocking async versions of most high level component methods.  

So developers can make their own choice depending on application needs,
instead of being forced to use threads with Indy and Synapse since
otherwise the GUI dies while any request awaits completion.  

I generally use blocking methods for client applications that are only
performing one task as a time, and non-blocking for servers which
otherwise potentially need hundreds or thousands of threads.  

Angus

--
To unsubscribe or change your settings for TWSocket mailing list
please goto http://lists.elists.org/cgi-bin/mailman/listinfo/twsocket
Visit our website at http://www.overbyte.be


Re: [twsocket] Why ICS prefers non-blocking sockets?

2011-02-22 Thread Arno Garrels
Zvone wrote:
> When I looked at Indy and Ararat Synapse they both prefer blocking
> sockets to connect to text-based protocols like HTTP, POP, SMTP, FTP
> etc. 

The main advantage of non-blocking is that you do not need one thread
per connection. Writing multi-threaded applications is not easy and
debugging can become quite difficult. One thread per connection is
waste of resources IMO. With ICS it's possible to handle hundreds of
connections within a single thread. The main disadvantage of using async.
winsock API is platform-dependence. Though Francois already found a way 
to emulate messages on Linux (Kylix). 

> 
> The reason - because communication is flowed - you send command, you
> wait reply, if reply does not match you handle error. It is all nice
> line-by-line inline code.

You can use the SyncXxx methods available in the HTTP, FTP, SMTP and POP3
client components if you prefer traditional coding.


-- 
Arno Garrels
--
To unsubscribe or change your settings for TWSocket mailing list
please goto http://lists.elists.org/cgi-bin/mailman/listinfo/twsocket
Visit our website at http://www.overbyte.be


Re: [twsocket] Why ICS prefers non-blocking sockets?

2011-02-22 Thread scconsulting

Abstraction classes, events and complexity are consulting bargains ;-)

-Message d'origine- 
From: Zvone 
Sent: Tuesday, February 22, 2011 2:26 PM 
To: ICS support mailing 
Subject: [twsocket] Why ICS prefers non-blocking sockets? 


So I am wondering why ICS prefers events when the code is so much simpler
without them?
--
To unsubscribe or change your settings for TWSocket mailing list
please goto http://lists.elists.org/cgi-bin/mailman/listinfo/twsocket
Visit our website at http://www.overbyte.be
--
To unsubscribe or change your settings for TWSocket mailing list
please goto http://lists.elists.org/cgi-bin/mailman/listinfo/twsocket
Visit our website at http://www.overbyte.be


Re: [twsocket] Why ICS prefers non-blocking sockets?

2011-02-22 Thread brian -
I much prefer non-blocking. While receiving data from a httpcli f.e or over
a slow connection etc, my app keeps running while waiting for data. without
having to complicate it all with extra threads for everything.

On Tue, Feb 22, 2011 at 2:26 PM, Zvone  wrote:

> When I looked at Indy and Ararat Synapse they both prefer blocking sockets
> to connect to text-based protocols like HTTP, POP, SMTP, FTP etc.
>
> The reason - because communication is flowed - you send command, you wait
> reply, if reply does not match you handle error. It is all nice
> line-by-line
> inline code.
>
> With ICS it uses events to reply to reply codes and non-blocking. But with
> this you lose - easy to follow code flow. If you really need to make it
> independent you simply put it in separate thread - both Indy and Synapse
> have their own way of solving this - Indy has special component for
> threading sockets and Synapse some kind of function that gets called every
> once in a while.
>
> It is all much better explained here why blocking is better:
> http://www.ararat.cz/synapse/doku.php/about
>
> So I am wondering why ICS prefers events when the code is so much simpler
> without them?
> --
> To unsubscribe or change your settings for TWSocket mailing list
> please goto http://lists.elists.org/cgi-bin/mailman/listinfo/twsocket
> Visit our website at http://www.overbyte.be
>
--
To unsubscribe or change your settings for TWSocket mailing list
please goto http://lists.elists.org/cgi-bin/mailman/listinfo/twsocket
Visit our website at http://www.overbyte.be


Re: [twsocket] SSL send emai using gmail?

2011-02-22 Thread Zvone
See:

http://wiki.overbyte.be/wiki/index.php/ICS_Download
--
To unsubscribe or change your settings for TWSocket mailing list
please goto http://lists.elists.org/cgi-bin/mailman/listinfo/twsocket
Visit our website at http://www.overbyte.be


[twsocket] Why ICS prefers non-blocking sockets?

2011-02-22 Thread Zvone
When I looked at Indy and Ararat Synapse they both prefer blocking sockets
to connect to text-based protocols like HTTP, POP, SMTP, FTP etc.

The reason - because communication is flowed - you send command, you wait
reply, if reply does not match you handle error. It is all nice line-by-line
inline code.

With ICS it uses events to reply to reply codes and non-blocking. But with
this you lose - easy to follow code flow. If you really need to make it
independent you simply put it in separate thread - both Indy and Synapse
have their own way of solving this - Indy has special component for
threading sockets and Synapse some kind of function that gets called every
once in a while.

It is all much better explained here why blocking is better:
http://www.ararat.cz/synapse/doku.php/about

So I am wondering why ICS prefers events when the code is so much simpler
without them?
--
To unsubscribe or change your settings for TWSocket mailing list
please goto http://lists.elists.org/cgi-bin/mailman/listinfo/twsocket
Visit our website at http://www.overbyte.be


Re: [twsocket] SSL send emai using gmail?

2011-02-22 Thread Antol
Hello Arno,

Tuesday, February 22, 2011, 3:42:39 PM, you wrote:

>> Ah forgot the button-sequence on the left.
>> Connect | Ehlo | StartTLS | Ehlo | Auth |..as usual

It says:
RequestDone Rq=0 Error=SSL Handshake failed EIcsSsleayException File not found: 
SSLEAY32.DLL


It  seems  that I don't have SSLEAY32.DLL. Where do people usually get
it?  I  found it in google but I don't want to download it from untrusted
sites.


-- 
Best regards,
 Antolmailto:spama...@mail.ru

--
To unsubscribe or change your settings for TWSocket mailing list
please goto http://lists.elists.org/cgi-bin/mailman/listinfo/twsocket
Visit our website at http://www.overbyte.be


Re: [twsocket] SSL send emai using gmail?

2011-02-22 Thread Zvone
A kind of related note - if you are downloading mail from Gmail (using POP3)
Gmail does not behave as usual servers where you issue RETR command and
deletes message only after you issue DELE command but instead it uses
settings from Gmail account and seems to ignore DELE command completely. If
you are not using POP3 but only SMTP then care about this.
--
To unsubscribe or change your settings for TWSocket mailing list
please goto http://lists.elists.org/cgi-bin/mailman/listinfo/twsocket
Visit our website at http://www.overbyte.be


Re: [twsocket] SSL send emai using gmail?

2011-02-22 Thread Arno Garrels
Arno Garrels wrote:
> Arno Garrels wrote:
>> Antol wrote:
>>> Hello ,
>>> 
>>> Anyone  has  any idea how to make OverbyteIcsSslMailSnd.exe send
>>> mails through  smtp.gmail.com?  Whatever  I try there, it just
>>> doesn't send. What parameters and buttons order should be used?
>> 
>> Either:
>> 
>> Host: smtp.googlemail.com / or smtp.gmail.com
>> Port: 25
>> SSL-Type: Explicit
>> User: 
>> Password: <...>
>> AuthType: Login //!
>> 
>> Or:
>> 
>> Host: smtp.googlemail.com / or smtp.gmail.com
>> Port: 465
>> SSL-Type: Implicit
>> User: 
>> Password: <...>
>> AuthType: Login //!
>> 
>> I prefer the first method.
>> 
>> At first skip peer verification (SslVerifyPeer unchecked).
>> 
>> Hit button Connect or Open and you are done.
>> 
>> If you use buttons on the left, after the SSL handshake
>> succeeded issue a second EHLO request, it might work
>> without that however won't be RFC-conform.
> 
> Ah forgot the button-sequence on the left.
> Connect | Ehlo | StartTLS | Ehlo | Auth |..as usual

As you might have noticed there are no authentication extensions listed
in the first Ehlo response, so always issue the second after the
SSL is established and AuthType may be set to smtpAuthAutoSelect as well.   

-- 
Arno Garrels

--
To unsubscribe or change your settings for TWSocket mailing list
please goto http://lists.elists.org/cgi-bin/mailman/listinfo/twsocket
Visit our website at http://www.overbyte.be


Re: [twsocket] SSL send emai using gmail?

2011-02-22 Thread Arno Garrels
Arno Garrels wrote:
> Antol wrote:
>> Hello ,
>> 
>> Anyone  has  any idea how to make OverbyteIcsSslMailSnd.exe send
>> mails through  smtp.gmail.com?  Whatever  I try there, it just
>> doesn't send. What parameters and buttons order should be used?
> 
> Either:
> 
> Host: smtp.googlemail.com / or smtp.gmail.com
> Port: 25
> SSL-Type: Explicit
> User: 
> Password: <...>
> AuthType: Login //!
> 
> Or:
> 
> Host: smtp.googlemail.com / or smtp.gmail.com
> Port: 465
> SSL-Type: Implicit
> User: 
> Password: <...>
> AuthType: Login //!
> 
> I prefer the first method.
> 
> At first skip peer verification (SslVerifyPeer unchecked).
> 
> Hit button Connect or Open and you are done.
> 
> If you use buttons on the left, after the SSL handshake
> succeeded issue a second EHLO request, it might work
> without that however won't be RFC-conform.

Ah forgot the button-sequence on the left.
Connect | Ehlo | StartTLS | Ehlo | Auth |..as usual


> 
> --
> Arno Garrels
--
To unsubscribe or change your settings for TWSocket mailing list
please goto http://lists.elists.org/cgi-bin/mailman/listinfo/twsocket
Visit our website at http://www.overbyte.be


Re: [twsocket] SSL send emai using gmail?

2011-02-22 Thread Angus Robertson - Magenta Systems Ltd
> Anyone  has  any idea how to make OverbyteIcsSslMailSnd.exe send 
> mails through  smtp.gmail.com?  

Goggle only support SSL, so you must use a mail demo supporting SSL. 

Angus

--
To unsubscribe or change your settings for TWSocket mailing list
please goto http://lists.elists.org/cgi-bin/mailman/listinfo/twsocket
Visit our website at http://www.overbyte.be


Re: [twsocket] SSL send emai using gmail?

2011-02-22 Thread Arno Garrels
Antol wrote:
> Hello ,
> 
> Anyone  has  any idea how to make OverbyteIcsSslMailSnd.exe send mails
> through  smtp.gmail.com?  Whatever  I try there, it just doesn't send.
> What parameters and buttons order should be used?

Either:

Host: smtp.googlemail.com / or smtp.gmail.com 
Port: 25
SSL-Type: Explicit
User: 
Password: <...>
AuthType: Login //!

Or:

Host: smtp.googlemail.com / or smtp.gmail.com 
Port: 465
SSL-Type: Implicit
User: 
Password: <...>
AuthType: Login //!

I prefer the first method.

At first skip peer verification (SslVerifyPeer unchecked).

Hit button Connect or Open and you are done. 

If you use buttons on the left, after the SSL handshake
succeeded issue a second EHLO request, it might work
without that however won't be RFC-conform.   

-- 
Arno Garrels
--
To unsubscribe or change your settings for TWSocket mailing list
please goto http://lists.elists.org/cgi-bin/mailman/listinfo/twsocket
Visit our website at http://www.overbyte.be


[twsocket] SSL send emai using gmail?

2011-02-22 Thread Antol
Hello ,

Anyone  has  any idea how to make OverbyteIcsSslMailSnd.exe send mails
through  smtp.gmail.com?  Whatever  I try there, it just doesn't send.
What parameters and buttons order should be used?


-- 
Best regards,
 Antol  mailto:spama...@mail.ru

--
To unsubscribe or change your settings for TWSocket mailing list
please goto http://lists.elists.org/cgi-bin/mailman/listinfo/twsocket
Visit our website at http://www.overbyte.be


Re: [twsocket] TTwitter component

2011-02-22 Thread Francois PIETTE

You should really consider making in freeware/opensource.
You'll gain something: other people will find bugs and make enhancements.
Your own applications will then be better. And you'll enter the hall of
fames :-)



Always been a bit skeptic about open source,
how do you make money from that :)


I do money with freeware. Well, not directly.

You may not know it, but I'm an independant consultant, full time. A 
significant part of my customers have found me because of my freeware. I 
simply provide custome development, training, consultancy and other similar 
activity. Many companies have some developers finding my components, then 
they start writing their application and discover that they lack some 
resource or knowledge to build their application, or their application 
require some changes in the components. Then I'm here ! They hire me and I 
earn some money.


Also, making the components freeware makes it better. People find bugs and 
added enhancements. My own applications benefit from that as well. They are 
more robust. You must really make a difference between components and 
applications ! I make frewware components, not applications.


--
francois.pie...@overbyte.be
The author of the freeware multi-tier middleware MidWare
The author of the freeware Internet Component Suite (ICS)
http://www.overbyte.be


--
To unsubscribe or change your settings for TWSocket mailing list
please goto http://lists.elists.org/cgi-bin/mailman/listinfo/twsocket
Visit our website at http://www.overbyte.be