reactos/base/shell/cmd/batch.h
Art Yerkes c501d8112c Create a branch for network fixes.
svn path=/branches/aicom-network-fixes/; revision=34994
2008-08-01 11:32:26 +00:00

52 lines
1.3 KiB
C

/*
* BATCH.H - A structure to preserve the context of a batch file
*
*
*/
#ifndef _BATCH_H_INCLUDED_
#define _BATCH_H_INCLUDED_
typedef struct tagBATCHCONTEXT
{
struct tagBATCHCONTEXT *prev;
LPWIN32_FIND_DATA ffind;
HANDLE hBatchFile;
TCHAR BatchFilePath[MAX_PATH];
LPTSTR forproto;
LPTSTR params;
LPTSTR raw_params; /* Holds the raw params given by the input */
INT shiftlevel;
BOOL bEcho; /* Preserve echo flag across batch calls */
HANDLE hFind; /* Preserve find handle when doing a for */
TCHAR In[MAX_PATH];
TCHAR Out[MAX_PATH];
TCHAR Err[MAX_PATH];
TCHAR forvar;
INT bCmdBlock;
BOOL bExecuteBlock[MAX_PATH];
LONG lCallPosition; /* store position where to return to after Call :Label */
LONG lCallPositionHigh;
} BATCH_CONTEXT, *LPBATCH_CONTEXT;
/* The stack of current batch contexts.
* NULL when no batch is active
*/
extern LPBATCH_CONTEXT bc;
extern BOOL bEcho; /* The echo flag */
#define BATCH_BUFFSIZE 2048
extern TCHAR textline[BATCH_BUFFSIZE]; /* Buffer for reading Batch file lines */
LPTSTR FindArg (INT);
LPTSTR BatchParams (LPTSTR, LPTSTR);
VOID ExitBatch (LPTSTR);
BOOL Batch (LPTSTR, LPTSTR, LPTSTR);
LPTSTR ReadBatchLine (LPBOOL);
VOID AddBatchRedirection(TCHAR *, TCHAR *, TCHAR *);
#endif /* _BATCH_H_INCLUDED_ */