[comp.lang.pascal] Redirecting I/O for .BAT f

Kai_Henningsen@ms.maus.de (Kai Henningsen) (06/24/91)

Andy DeFaria defaria @ hpcupt3.cup.hp.com schrieb am Mi 19.06.1991, 05:24

AD>  Exec ('D:\COMMAND.COM', 'D:\COMMAND.COM /C C:\ANDY\FOO.BAT > FOO.OUT');

AD>Where D:\COMMAND.COM is a valid COMMAND.COM and C:\ANDY\FOO.BAT contains:

AD>Specified COMMAND search directory bad

Well, several comments.

1. Do not use 'D:\COMMAND.COM', except if you try to call a *different* COMMAND
from the one that's your default. Use GetEnv('COMSPEC').

2. You forgot to use /c for the first COMMAND.

3. You forgot to use SwapVectors.

So, try it like this:

var
  CommandCom: string;


  CommandCom := GetEnv('COMSPEC');
  SwapVectors;
  Exec (CommandCom, '/c '+CommandCom+' /C C:\ANDY\FOO.BAT > FOO.OUT');
  SwapVectors;
--
Kai Henningsen  Internet: kh@ms.maus.de or kaih@math.uni-muenster.de
Muenster         UUCP: any_backbone_that_knows_domains!ms.maus.de!kh
Germany         Fido: kh%maus ms, 2:242/2.6 or Kai Henningsen, 2:242/2.244