Newsgroups : Borland : borland.public.delphi.internet.winsock : 2006 May : Re: Basic newbie Indy 10 problems

www.cryer.info
Managed Newsgroup Archive

Re: Basic newbie Indy 10 problems

Subject:Re: Basic newbie Indy 10 problems
Posted by:"John Carlyle-Clarke" (jpcc@removethis.bigfoot.com)
Date:11 May 2006 16:22:05

"Remy Lebeau \(TeamB\)" <no.spam@no.spam.com> wrote in
news:44637618$1@newsgroups.borland.com:

>
> "John Carlyle-Clarke" <jpcc@removethis.bigfoot.com> wrote in
> message news:Xns97C084FA0D65Adiscombobulation@207.105.83.66...
>
>> If I use Indy 10.0.76
>
> The current Indy 10 snapshot is 10.1.5.  You should consider
> upgrading.
>

The source options available on www.indyproject.org seem to be
Version 10.0.52 or the bleeding edge straight from CVS files.
10.1.5 is available from Atozed only AFAICT.

>> create an empty execute handler
>
> That will cause the server to eat up CPU cycles.  The OnExecute
> event handler needs to perform a yielding operation.  If you don't
> want it to access the socket (what is the point of having a server
> that does nothing?) then at least make a call to Sleep().

The purpose of this was to test the minimum application that would
produce the problem, but I see your point.  However, the same
happens in my real app too.

>
>> set active to True
>
> What happens if you set that at runtime instead of at design-time?

I still get a similar problem, although the exact exception does
vary.

>
>> start application and then close  it (with no connections made) I
>> get an EInvalidPointer exception in IdThread.pas (line 348).
>
> What does the actual code look like?  In my copy, line 348 is a
> call to TIdThread.HandleRunException() inside of an exception
> handler, which does nothing.

I am getting an access violation now, at the same spot.  It is in
TIDThread.Execute, and it is the last line of this section:

       Include(FOptions, itoReqCleanup);
        try
          try
            BeforeRun;
            try
              if Loop then begin
                while not Stopped do begin
                  try
->                  Run;


>
>> So, I tried to install 10.1.5, but that won't install because of
>> a message about filectrl being used in the package IndySystem50.
>
> Indy 10 doesn't use the FileCtrl unit anymore.  You probably still
> have older Indy files on your machine that you did not remove.

I don't think so...

When I've uninstalled Indy and deleted the folder, then installed
10.1.5, the file IdSysVCL contains this code:

unit IdSysVCL;

interface

uses
  {$I IdCompilerDefines.inc}
  {$IFDEF DOTNET}
  System.IO,
  {$ENDIF}
  {$IFDEF MSWindows}
  Windows,
  {$ENDIF}
  {$IFDEF DELPHI5}
  FileCtrl,
  {$ENDIF}
  IdSysBase,
  SysUtils;
      

>
>> I get a failure in IdSSLOpenSSL.pas saying line too long (more
>> than 1023 characters) at line 1.
>
> That is a Borland problem, not an Indy problem.  Line 1 of
> IdSSLOpenSSL.pas is certainly not more than 1024 characters long.
> In fact, line 1 is only 1 character long.
>

Indeed, but I am sure I remember this problem of old, and it's to do
with line endings.  If I open the file in Ultraedit32 it says "File
is probably not in DOS format - do you want to convert it?" which is
a sure sign of the presence of Unix endings.  Strangely even if I
say yes and save it, Delphi still doesn't like it, so there is
something odd in there, but short of picking through it with a hex
editor I'm not sure what.  To be honest, I simply took this as
confirmation that I should have heeded the dire warnings on the site
that say "You are being warned. This will provide you with a direct
link into our current development files. At various times the files
may not compile, or in some cases may cause strange errors. Use at
your own risk!"

Replies:

In response to:

www.cryer.info
Managed Newsgroup Archive