TCSTART and TCEXIT not executed

May 20, 2008
12,175
133
Syracuse, NY, USA
TCMD 13 in installed in d:\tc13 (always has been). TCC.EXE, TCMD.INI, TCSTART.BTM, and TCEXIT.BTM all reside in d:\tc13. If I start TCC with a 2-click in Explorer (or otherwise) I see

Code:
d:\tc13> echo %_ininame
D:\TC13\TCMD.INI
 
d:\tc13> option tcstartpath
tcstartpath=d:\tc13
 
d:\tc13> grep -i tcstartpath tcmd.ini
TCStartPath=d:\tc13
 
[both above confirmed by the OPTION dialog]
 
d:\tc13> echo %_tcstart
ECHO is OFF
 
d:\tc13> echo %_tcexit
ECHO is OFF
 
d:\tc13> dir /f /k /m tce*.btm;tcs*.btm
D:\TC13\tcexit.btm
D:\TC13\tcstart.btm
 
d:\tc13>

And TCSTART (which contains a message and a pause) was not executed. And when I close TCC, TCEXIT (which contains a beep) is not executed.

I uploaded my INI file.
 

Attachments

  • TCMD.INI
    3.8 KB · Views: 171

rconn

Administrator
Staff member
May 14, 2008
12,557
167
TCMD 13 in installed in d:\tc13 (always has been). TCC.EXE, TCMD.INI, TCSTART.BTM, and TCEXIT.BTM all reside in d:\tc13.

Don't put TCMD.INI in your installation directory. It goes in %LOCALAPPDATA (in Win7, that's \users\yourname\appdata\local\jpsoft\tcmd.ini). (This goes back to the introduction of Vista and Microsoft blocking access to the root directories and "\Program Files".)
 
May 20, 2008
12,175
133
Syracuse, NY, USA
Don't put TCMD.INI in your installation directory. It goes in %LOCALAPPDATA (in Win7, that's \users\yourname\appdata\local\jpsoft\tcmd.ini). (This goes back to the introduction of Vista and Microsoft blocking access to the root directories and "\Program Files".)

There has never been a TCMD.INI there. TCC finds it just fine if it's in the install dir (which for me is not in "Program Files).

But I found the problem. The failure of TCSTART and TCEXIT to run (to be found, apparently) goes away if I either

1. uncheck the PathExt option

or

2. put .BTM in the PATHEXT variable.

That's a strange dependence. One would never expect it having read about TCSTART and PathExt. There should be no path searches involved since TCStartPath is explicitly specified. Apparently, %PATHEXT **defines** what TCC considers executable, even in situations where %PATH is not involved. If that's the case, then the PathExt help should make that clear, and the TCSTART help, in mentioning that any "executable" extension can be used for TCSTART and TCEXIT should contain a reference to the PATHEXT variable.
 

rconn

Administrator
Staff member
May 14, 2008
12,557
167
The PATHEXT variable is (1) optionally set by Windows, not by TCC, and (2) disabled by default in TCC. So you had to both turn on support for PATHEXT and then fail to configure PATHEXT to support BTM files.

PATHEXT has nothing to do with path searches, only with what Windows (not just TCC) considers an executable file.
 
May 20, 2008
12,175
133
Syracuse, NY, USA
The PATHEXT variable is (1) optionally set by Windows, not by TCC, and (2) disabled by default in TCC. So you had to both turn on support for PATHEXT and then fail to configure PATHEXT to support BTM files.

PATHEXT has nothing to do with path searches, only with what Windows (not just TCC) considers an executable file.

Well, the help for PathExt sure gives the impression that it is used, together with PATH, in the "standard path search".

I haven't paid any attention to PATHEXT in years. If it's going to remain possible to screw up the TCSTART/TCEXIT mechanism with it, I think that should be documented.
 

Similar threads

Replies
1
Views
1K