- May
- 574
- 4
Using TCC 10.00.41 Windows XP [Version 5.1.2600] SP3
TCC fails on an IFF ISAPP test. The process just disappears.
This happens whether TCC is run in a TC tab or independently.
I had first noticed this when build 30 wacs available, but disabled the
offending command file from running by test for %_4ver being greater than 9.9.
Now I've gotten around to trying to isolate it.
In version 9 and earlier, this worked.
I've checked my syntax, and I'm reasonably sure I'm not using unsupported
syntax nor unsupported features.
Here's an excerpt of the log file with a TCC 10.00.40 failure:
And here is the beginning of the TASKWATCH1.BAT down to the ENDIFF corresponding to the
failing IFF:
TCC fails on an IFF ISAPP test. The process just disappears.
This happens whether TCC is run in a TC tab or independently.
I had first noticed this when build 30 wacs available, but disabled the
offending command file from running by test for %_4ver being greater than 9.9.
Now I've gotten around to trying to isolate it.
In version 9 and earlier, this worked.
I've checked my syntax, and I'm reasonably sure I'm not using unsupported
syntax nor unsupported features.
Here's an excerpt of the log file with a TCC 10.00.40 failure:
Here's an excerpt of the log file with a TCC 9.02.154, showing the same command sequence working:[01-25-09 17:06:33][316] taskwatch1.bat
[01-25-09 17:06:33][316] echo off
[01-25-09 17:06:33][316] if "%1" eq "min" .and. 0%_tctab eq 0 window min
[01-25-09 17:06:33][316] if "%_par_pgm" eq "svchost" window min
[01-25-09 17:06:33][316] echo Running C:\work\taskwatch1.bat at 01-25-2009 17:06:33 EST
[01-25-09 17:06:33][316] if %@index["%_wintitle",\svchost.exe] gt 0 echo Running as a system service.
[01-25-09 17:06:33][316] if not defined tclib set tclib=c:\tc32
[01-25-09 17:06:33][316] set activewindow=TC 10 - TCC Prompt
[01-25-09 17:06:33][316] iff defined activewindow then
[01-25-09 17:06:33][316] if %@words[%activewindow] gt 3 set activewindow=%@word[0-2,%activewindow] *
[01-25-09 17:06:33][316] set activewindow=TC 10 - *
[01-25-09 17:06:33][316] set activepos=22,119,703,1110
[01-25-09 17:06:33][316] set left=119
[01-25-09 17:06:33][316] set top=22
[01-25-09 17:06:33][316] set bottom=703
[01-25-09 17:06:33][316] set right=1110
[01-25-09 17:06:33][316] set activepos=119,22,991,681
[01-25-09 17:06:33][316] set procexp="C:\Program Files\sysinternals\procexp.exe"
[01-25-09 17:06:33][316] iff exist %procexp then
[01-25-09 17:06:33][316] iff isapp %procexp then
(3 lines beyond the command that had failed in v 10)[01-25-09 17:17:36][1916] taskwatch1.bat
[01-25-09 17:17:36][1916] echo off
[01-25-09 17:17:36][1916] if "%1" eq "min" .and. 0%_tctab eq 0 window min
[01-25-09 17:17:36][1916] if "%_par_pgm" eq "svchost" window min
[01-25-09 17:17:36][1916] echo Running C:\work\taskwatch1.bat at 01-25-2009 17:17:36 EST
[01-25-09 17:17:36][1916] if %@index["%_wintitle",\svchost.exe] gt 0 echo Running as a system service.
[01-25-09 17:17:36][1916] if not defined tclib set tclib=c:\tc32
[01-25-09 17:17:36][1916] set activewindow=TC 9 - TCC
[01-25-09 17:17:36][1916] iff defined activewindow then
[01-25-09 17:17:36][1916] if %@words[%activewindow] gt 3 set activewindow=%@word[0-2,%activewindow] *
[01-25-09 17:17:36][1916] set activewindow=TC 9 - *
[01-25-09 17:17:36][1916] set activepos=0,216,718,1124
[01-25-09 17:17:36][1916] set left=216
[01-25-09 17:17:36][1916] set top=0
[01-25-09 17:17:36][1916] set bottom=718
[01-25-09 17:17:36][1916] set right=1124
[01-25-09 17:17:36][1916] set activepos=216,0,908,718
[01-25-09 17:17:36][1916] set procexp="C:\Program Files\sysinternals\procexp.exe"
[01-25-09 17:17:36][1916] iff exist %procexp then
[01-25-09 17:17:36][1916] iff isapp %procexp then
[01-25-09 17:17:36][1916] iff not iswindow "Process Explorer - Sys*" then
[01-25-09 17:17:36][1916] activate "Process Explorer - Sys*" hide 2> nul
[01-25-09 17:17:36][1916] activate "Process Explorer - Sys*" /pos=854,0,427,730 2> nul
And here is the beginning of the TASKWATCH1.BAT down to the ENDIFF corresponding to the
failing IFF:
Code:
@echo off
rem File C:\WORK\taskwatch1.bat, 25-Jan-2009 17:06 EST
if "%1" eq "min" .and. 0%_tctab eq 0 window min
if "%_par_pgm" eq "svchost" window min
echo Running %_batchname at %date% %_time %tzn
rem echo.
if %@index["%_wintitle",\svchost.exe] gt 0 echo Running as a system service.
rem if 0%_4ver gt 9.9 quit
if not defined tclib set tclib=c:\tc32
rem if %@index["%_wintitle",%@name[%_batchname]] eq -1 quit
:: PROCEXP
set activewindow=%_winfgwindow
iff defined activewindow then
if %@words[%activewindow] gt 3 set activewindow=%@word[0-2,%activewindow] *
set activepos=%@winpos[%activewindow]
set left=%@word[1,%activepos]
set top=%@word[0,%activepos]
set bottom=%@word[2,%activepos]
set right=%@word[3,%activepos]
set activepos=%left,%top,%@eval[%right - %left],%@eval[%bottom - %top]
endiff
set procexp="%ProgramFiles%\sysinternals\procexp.exe"
iff exist %procexp then
iff isapp %procexp then
iff not iswindow "Process Explorer - Sys*" then
start "Process Explorer" %procexp -t
delay 1
else
activate "Process Explorer - Sys*" hide 2> nul
endiff
else
start "Process Explorer" %procexp -t
endiff
endiff