Welcome!

By registering with us, you'll be able to discuss, share and private message with other members of our community.

SignUp Now!

Batch parameters broken?

May
12,998
174
Rex, you seen this BTM before, during the beta testing. A few versions ago I tested all four of the following, and they all worked.
Code:
... | tee /a v:\raw%1.dat | gosub iprocessline | tee /a v:\intruders%1.log (gosub)
... | tee /a v:\raw%1.dat | call :iprocessline | tee /a v:\intruders%1.log (call subroutine)
... | tee /a v:\raw%1.dat | v:\iprocessline.btm | tee /a v:\intruders%1.log (another BTM)
... | tee /a v:\raw%1.dat | iprocessline | tee /a v:\intruders%1.log (library function).

None work with build 25. I get a variety of error messages, but it looks like the batch parameters are not propagated properly. Some of the error messages look like this.
Code:
TCC: (Sys) The process cannot access the file because
 "V:\raw.dat"
TCC: (Sys) The process cannot access the file because
 "V:\intruders.log"
Those file names are wrong. They should be raw1.dat or raw2.dat and intruders1.log or intruders2.log, depending on the value of %1 (1 or 2).
 
Boiled down a tad, that certainly seems to be the problem. Below, the file name is not correct; %1 was not known in the piped instance.
Code:
v:\> type b1.btm
echo %1 | tee %1.txt

v:\> b1.btm foo
foo

v:\> type foo.txt
TCC: (Sys) The system cannot find the file specified.
 "V:\foo.txt"

v:\> type .txt
foo
 

Similar threads

Back
Top