L.D wrote:
>Poor question, bad guess, but I'll respond.

Thanks ;-)
I hope this mail will end this, I do know what I could add - more
specifially exactly how Arachne works. It's just that I don't think you
need those details here, besides they aren't hard to figure out for
yourself (no source needed).

>1.  Yes, I had checked to see what clr.bat does.  I had hoped something
>could be done there, but no such luck.  That's why I tried experimenting
>somewhere else.

That was a good idea. However the correct place would probably have been to
experiment inside the source :/

>2.  Since you're not familiar with clr.bat, we can go over it step by
>step.  But first, some basics:

Well I do know it. You might be interested to know that it's my "fault"
that for statments are used (they were not in the first clr.bat file that
Michael made).

>    b.  Normally this is limited to 9 unless you decide to "step"; if
>        you feed in more than 9 variables without "stepping," they
>        will replace earlier variables from the front. [i.e. #10
>        becomes #1 and all the other variables are incremented up by
>        the value of one]

It's called "shifting" IMHO (you use SHIFT) ;-)

>    c.  A batch file doesn't do anything you don't tell it to do
>        [i.e. you can feed it 9 variables and it will only work with
>        the ones specified in the batch program]

Correct - but say that you sent the wrong argument then *bad* things can
happen. This is what I assumed you did (eg. %3 was incorrect)

>    f.  A batch program runs in the directory where it is invoked.  If
>    you want it to do something somewhere else, you have to give the
>    specific paths to do that.  i.e. if you want to delete all the
>    files in /CACHE you must have /CACHE fully pathed.  The full path
>    can be via "hardwiring" in the batch program, via variables fed to
>    the batch program, or via a combination thereof.  [As you will
>    see, three of the possible ways are used in CLR.BAT]

Or, you can make a misstake in the BATch file or how it's called and get
weird results.

>    [Note:  Those "if" statments are essential to running the program,
>    because if you tell it to do something and it's impossible, the
>    program abends at that point.  Thus, instead of "del %1" you say
>    "Hey, if %1 is there get rid of it," and the program is quite
>    happy of %1 doesn't exist.]

Incorrect. It would work just as fine anyway. To delete it wouldn't make
any sense but it doesn't hurt the program/computer. Something that would be
bad (in this case) is the resulting error printed (which can't be
redirected with a ">" since it's written to stderr).

>    b.  Where does CLR.BAT get the variables??  From CORE.EXE
>    [or possibly from INSIGHT.EXE, but I understand that control for
>    anything except mail management is transferred out of Insight]

It comes from core.exe

>    call t:\arachne\system\dgi\clr.bat cache.idx V:\cache\
v:\temp\arachne.tmp\

There's of course the risk that we will run out of command-line space. I
haven't heard this addressed before and I doubt it was the reason for your
problems but perhaps we should consider it as a possible upcomming problem
for someone else? (It was a problem combined with a certain APM.EXE version
I made).

>        [Note:  The %%%f on the end may be a typo;

Correct, Michael has made a typo here. IIRC Clarence was the first one to
spot it.

>If that line in MIME.CFG were modified as follows ...
>
>file/clearcache.dgi
>     |call $esystem\\dgi\\clr.bat $c $a $t\n20992 Load_images Ins

Finally I get to see your line. This was what I asked for in the first mail
I sent.
And *no* it isn't correct. I have marked the problem for you:

     |call $esystem\\dgi\\clr.bat $c $a $t\n20992 Load_images Ins
                                            ^^^^^^^^^^^^^^^^^^^^^

So do you happen to have a file (batch file for instance) called 20992 that
will remove everything (I know you said that you didn't have such a file,
but if so it would explain everything).

>    3.  batch file runs and then returns to allow Arachne to complete
>    the second command which would be seen as "20992 Load_images Ins"

Arachne doesn't run this, your shell does (c:\command.com in most cases).

>    4.  Something in Arachne then reads the keycode of "20992" as a
>    destructive "delete everything you can find in main Arachne
>    directory"
>    OR
(snip)

Arachne never acts on statments it doesn't recognize.

>What you mean by "this file" is unclear; I am having to assume you
>mean TOOLBAR.TB ...

Correct. Nothing is valid in any other file than the one it is in (or
stated that it's legal for). You can't put HTML in mime.cfg (well you could
but we will not go into that now) and expect Arachne to generate a HTML page.

>Although I was, in actuality, running INSIGHT.EXE at the time I
>selected F-8 for 'clear cache' ...  it is my understanding that
>control would have passed back to CORE.EXE before the DGI was run.

There are two things I can not understand (please excuse this rant it isn't
aimed at you directly):

1. Why does almost everyone want to run EPPPD using a script when this
isn't supported by many ISPs?
2. Why is it so hard for so many to understand that if you see Arachnes GUI
you are running core.exe? Insight.exe only converts files/directories and
lets core.exe display them for you.

>In addition, the variables
>must be lowercase, must have no space between the dash and the letter
>and the dash must be used.

IIRC you can use / as well.

>So I am still at a loss to understand what could have possibly caused
>anything within the Arachne package to delete every single file in the
>main Arachne directory.

Nothing inside Arachne did. You changing mime.cfg made DOS (well your shell
actually) do it. I can not explain exactly how you made it do that, but
it's not Arachnes fault since Arachne does NOT care about those things in
mime.cfg and doesn't run them.
//Bernie

Reply via email to