⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 cmd.h

📁 PocketCMD是与pocketconsole配合实用的命令行解释器(Shell)
💻 H
字号:
/* $Id: cmd.h,v 1.2 2004/02/15 23:46:38 pfalcon Exp $ * *  CMD.H - header file for the modules in CMD.EXE * * *  History: * *    7-15-95 Tim Norman *        started * *    06/29/98 (Rob Lake) *        Moved error messages in here * *    07/12/98 (Rob Lake) *        Moved more error messages here. * *    30-Jul-1998 (John P Price <linux-guru@gcfl.net>) *        Added compile date to version. * *    26-Feb-1999 (Eric Kohl <ekohl@abo.rhein-zeitung.de>) *        Introduced a new version string. *        Thanks to Emanuele Aliberti! */#ifndef _CMD_H_INCLUDED_#define _CMD_H_INCLUDED_#include "config.h"#include <windows.h>#include <wincon.h>#include <cetchar.h>#include <cestdlib.h>#include <celib.h>#include "cehelp.h"#include "cmdver.h"#include "batch.h"#ifdef _MSC_VER#define SHELLVER     _T("Version ") CMD_VER _T(" [") _T(__DATE__) _T(", msc]")#else#ifdef __LCC__#define SHELLVER     _T("Version ") CMD_VER _T(" [") _T(__DATE__) _T(", lcc-win32]")#else#define SHELLVER     _T("Version ") CMD_VER _T(" [") _T(__DATE__) _T("]")#endif#endif#define BREAK_BATCHFILE 1#define BREAK_OUTOFBATCH 2#define BREAK_INPUT 3#define BREAK_IGNORE 4/* define some error messages */#define NOENVERR        _T("ERROR: no environment")#define INVALIDDRIVE    _T("ERROR: invalid drive")#define INVALIDFUNCTION _T("ERROR: invalid function")#define ACCESSDENIED    _T("ERROR: access denied")#define BADENVIROMENT   _T("ERROR: bad enviroment")#define BADFORMAT       _T("ERROR: bad format")#define ERROR_E2BIG     _T("ERROR: Argument list too long")#define ERROR_EINVAL    _T("ERROR: Invalid argument")#define SHELLINFO       _T("ReactOS Command Line Interpreter")#define D_ON         _T("on")#define D_OFF        _T("off")/* command line buffer length */#ifdef __REACTOS__#define CMDLINE_LENGTH  512#else//#define CMDLINE_LENGTH  8192#define CMDLINE_LENGTH  1024#endif/* global variables */extern WORD   wColor;extern WORD   wDefColor;extern BOOL   bCtrlBreak;extern BOOL   bIgnoreEcho;extern BOOL   bExit;extern INT    nErrorLevel;extern SHORT  maxx;extern SHORT  maxy;extern OSVERSIONINFO osvi;/* Prototypes for ALIAS.C */VOID InitializeAlias (VOID);VOID DestroyAlias (VOID);VOID ExpandAlias (LPTSTR, INT);INT CommandAlias (LPTSTR, LPTSTR);/* Prototypes for ATTRIB.C */INT CommandAttrib (LPTSTR, LPTSTR);/* Prototypes for BEEP.C */INT cmd_beep (LPTSTR, LPTSTR);/* Prototypes for CALL.C */INT cmd_call (LPTSTR, LPTSTR);/* Prototypes for CHCP.C */INT CommandChcp (LPTSTR, LPTSTR);/* Prototypes for CHOICE.C */INT CommandChoice (LPTSTR, LPTSTR);/* Prototypes for CLS.C */INT cmd_cls (LPTSTR, LPTSTR);/* Prototypes for CMD.C */VOID ParseCommandLine (LPTSTR);VOID AddBreakHandler (VOID);VOID RemoveBreakHandler (VOID);/* Prototypes for CMDINPUT.C */INT ReadCommand (LPTSTR, INT);/* Prototypes for CMDTABLE.C */#define CMD_SPECIAL     1#define CMD_BATCHONLY   2#define CMD_HIDE        4typedef struct tagCOMMAND{	LPTSTR name;	INT    flags;	INT    (*func) (LPTSTR, LPTSTR);} COMMAND, *LPCOMMAND;extern COMMAND cmds[];		/* The internal command table */VOID PrintCommandList (VOID);/* Prototypes for COLOR.C */VOID SetScreenColor(WORD wArgColor, BOOL bFill);INT CommandColor (LPTSTR, LPTSTR);/* Prototypes for CONSOLE.C */#ifdef _DEBUGVOID DebugPrintf (LPTSTR, ...);#endif /* _DEBUG */VOID ConInDummy (VOID);VOID ConInDisable (VOID);VOID ConInEnable (VOID);VOID ConInFlush (VOID);VOID ConInKey (PINPUT_RECORD);VOID ConInString (LPTSTR, DWORD);VOID ConOutChar (TCHAR);VOID ConOutPuts (LPTSTR);VOID ConOutPrintf (LPTSTR, ...);VOID ConErrChar (TCHAR);VOID ConErrPuts (LPTSTR);VOID ConErrPrintf (LPTSTR, ...);SHORT GetCursorX  (VOID);SHORT GetCursorY  (VOID);VOID  GetCursorXY (PSHORT, PSHORT);VOID  SetCursorXY (SHORT, SHORT);VOID GetScreenSize (PSHORT, PSHORT);VOID SetCursorType (BOOL, BOOL);/* Prototypes for COPY.C */INT cmd_copy (LPTSTR, LPTSTR);/* Prototypes for DATE.C */INT cmd_date (LPTSTR, LPTSTR);/* Prototypes for DEL.C */INT CommandDelete (LPTSTR, LPTSTR);/* Prototypes for DELAY.C */INT CommandDelay (LPTSTR, LPTSTR);/* Prototypes for DIR.C */INT CommandDir (LPTSTR, LPTSTR);/* Prototypes for DIRSTACK.C */VOID InitDirectoryStack (VOID);VOID DestroyDirectoryStack (VOID);INT  GetDirectoryStackDepth (VOID);INT  CommandPushd (LPTSTR, LPTSTR);INT  CommandPopd (LPTSTR, LPTSTR);INT  CommandDirs (LPTSTR, LPTSTR);/* Prototypes for ECHO.C */INT  CommandEcho (LPTSTR, LPTSTR);INT  CommandEchos (LPTSTR, LPTSTR);INT  CommandEchoerr (LPTSTR, LPTSTR);INT  CommandEchoserr (LPTSTR, LPTSTR);/* Prototypes for ERROR.C */VOID ErrorMessage (DWORD, LPTSTR, ...);VOID error_no_pipe (VOID);VOID error_bad_command (VOID);VOID error_invalid_drive (VOID);VOID error_req_param_missing (VOID);VOID error_sfile_not_found (LPTSTR);VOID error_file_not_found (VOID);VOID error_path_not_found (VOID);VOID error_too_many_parameters (LPTSTR);VOID error_invalid_switch (TCHAR);VOID error_invalid_parameter_format (LPTSTR);VOID error_out_of_memory (VOID);VOID error_syntax (LPTSTR);VOID msg_pause (VOID);/* Prototypes for FILECOMP.C */#ifdef FEATURE_UNIX_FILENAME_COMPLETIONVOID CompleteFilename (LPTSTR, INT);INT  ShowCompletionMatches (LPTSTR, INT);#endif#ifdef FEATURE_4NT_FILENAME_COMPLETION#endif/* Prototypes for FOR.C */INT cmd_for (LPTSTR, LPTSTR);/* Prototypes for FREE.C */INT CommandFree (LPTSTR, LPTSTR);/* Prototypes for GOTO.C */INT cmd_goto (LPTSTR, LPTSTR);/* Prototypes for INTERNAL.C */VOID InitLastPath (VOID);VOID FreeLastPath (VOID);INT  cmd_chdir (LPTSTR, LPTSTR);INT  cmd_mkdir (LPTSTR, LPTSTR);INT  cmd_rmdir (LPTSTR, LPTSTR);INT  CommandExit (LPTSTR, LPTSTR);INT  CommandRem (LPTSTR, LPTSTR);INT  CommandShowCommands (LPTSTR, LPTSTR);/* Prototypes for LABEL.C */INT cmd_label (LPTSTR, LPTSTR);/* Prototypes for LOCALE.C */extern TCHAR cDateSeparator;extern INT   nDateFormat;extern TCHAR cTimeSeparator;extern INT   nTimeFormat;extern TCHAR aszDayNames[7][8];extern TCHAR cThousandSeparator;extern TCHAR cDecimalSeparator;extern INT   nNumberGroups;VOID InitLocale (VOID);VOID PrintDate (VOID);VOID PrintTime (VOID);/* Prototypes for MEMORY.C */INT CommandMemory (LPTSTR, LPTSTR);/* Prototypes for MISC.C */TCHAR  cgetchar (VOID);BOOL   CheckCtrlBreak (INT);LPTSTR *split (LPTSTR, LPINT);VOID   freep (LPTSTR *);LPTSTR stpcpy (LPTSTR, LPTSTR);BOOL   IsValidPathName (LPCTSTR);BOOL   IsValidFileName (LPCTSTR);BOOL   IsValidDirectory (LPCTSTR);BOOL   FileGetString (HANDLE, LPTSTR, INT);#ifndef __REACTOS__HWND   GetConsoleWindow(VOID);#endif#define PROMPT_NO    0#define PROMPT_YES   1#define PROMPT_ALL   2#define PROMPT_BREAK 3INT PagePrompt (VOID);INT FilePromptYN (LPTSTR, ...);INT FilePromptYNA (LPTSTR, ...);/* Prototypes for MOVE.C */INT cmd_move (LPTSTR, LPTSTR);/* Prototypes for MSGBOX.C */INT CommandMsgbox (LPTSTR, LPTSTR);/* Prototypes from PATH.C */INT cmd_path (LPTSTR, LPTSTR);/* Prototypes from PROMPT.C */VOID PrintPrompt (VOID);INT  cmd_prompt (LPTSTR, LPTSTR);/* Prototypes for REDIR.C */#define INPUT_REDIRECTION    1#define OUTPUT_REDIRECTION   2#define OUTPUT_APPEND        4#define ERROR_REDIRECTION    8#define ERROR_APPEND        16INT GetRedirection (LPTSTR, LPTSTR, LPTSTR, LPTSTR, LPINT);/* Prototypes for REN.C */INT cmd_rename (LPTSTR, LPTSTR);/* Prototypes for SCREEN.C */INT CommandScreen (LPTSTR, LPTSTR);/* Prototypes for SET.C */INT cmd_set (LPTSTR, LPTSTR);/* Prototypes for START.C */INT cmd_start (LPTSTR, LPTSTR);/* Prototypes for STRTOCLR.C */BOOL StringToColor (LPWORD, LPTSTR *);/* Prototypes for TIME.C */INT cmd_time (LPTSTR, LPTSTR);/* Prototypes for TIMER.C */INT CommandTimer (LPTSTR cmd, LPTSTR param);/* Prototypes for TITLE.C */INT cmd_title (LPTSTR, LPTSTR);/* Prototypes for TYPE.C */INT cmd_type (LPTSTR, LPTSTR);/* Prototypes for VER.C */VOID ShortVersion (VOID);INT  cmd_ver (LPTSTR, LPTSTR);/* Prototypes for VERIFY.C */INT cmd_verify (LPTSTR, LPTSTR);/* Prototypes for VOL.C */INT cmd_vol (LPTSTR, LPTSTR);/* Prototypes for WHERE.C */BOOL SearchForExecutable (LPCTSTR, LPTSTR);/* Prototypes for WINDOW.C */INT CommandActivate (LPTSTR, LPTSTR);INT CommandWindow (LPTSTR, LPTSTR);/* The MSDOS Batch Commands [MS-DOS 5.0 User's Guide and Reference p359] */int cmd_if(TCHAR *, TCHAR *);int cmd_pause(TCHAR *, TCHAR *);int cmd_shift(TCHAR *, TCHAR *);#endif /* _CMD_H_INCLUDED_ */

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -