Remove more hardcode string to En.rc Modified: trunk/reactos/subsys/system/cmd/En.rc Modified: trunk/reactos/subsys/system/cmd/chcp.c Modified: trunk/reactos/subsys/system/cmd/cmd.c Modified: trunk/reactos/subsys/system/cmd/resource.h _____
Modified: trunk/reactos/subsys/system/cmd/En.rc --- trunk/reactos/subsys/system/cmd/En.rc 2005-04-02 21:45:38 UTC (rev 14462) +++ trunk/reactos/subsys/system/cmd/En.rc 2005-04-02 22:19:12 UTC (rev 14463) @@ -48,6 +48,11 @@
Type CD drive: to display the current directory on the specified drive.\n \ Type CD without a parameter to display the current drive and directory. "
+STRING_CHCP_HELP, "Displays or sets the active code page number.\n\n \ +CHCP [nnn]\n\n \ + nnn Specifies the active code page number.\n\n \ +Type CHCP without a parameter to display the active code page number." + STRING_CHOICE_HELP, "Waits for the user to choose one of a set of choices.\n\n \ CHOICE [/C[:]choices][/N][/S][/T[:]c,nn][text]\n\n \ /C[:]choices Specifies allowable keys. Default is YN.\n \ @@ -59,6 +64,29 @@
STRING_CLS_HELP, "Clears the screen.\n\nCLS"
+STRING_CMD_HELP1, "\nInternal commands available:\n" + +STRING_CMD_HELP2, "\nFeatures available:" + +STRING_CMD_HELP3," [aliases]" + +STRING_CMD_HELP4," [history]" + +STRING_CMD_HELP5," [unix filename completion]" + +STRING_CMD_HELP6," [directory stack]" + +STRING_CMD_HELP7," [redirections and piping]" + +STRING_CMD_HELP8, "Starts a new instance of the ReactOS command line interpreter.\n\n \ +CMD [/[C|K] command][/P][/Q][/T:bf]\n\n \ + /C command Runs the specified command and terminates.\n \ + /K command Runs the specified command and remains.\n \ + /P CMD becomes permanent and runs autoexec.bat\n \ + (cannot be terminated).\n \ + /T:bf Sets the background/foreground color (see COLOR command)." + + STRING_EXIT_HELP, "Exits the command line interpreter.\n\nEXIT"
STRING_MKDIR_HELP, "Creates a directory.\n\n \ @@ -79,16 +107,21 @@ STRING_CHOICE_OPTION "YN"
- +STRING_ALIAS_ERROR, "Command line too long after alias expansion!\n" +STRING_BATCH_ERROR, "Error opening batch file\n" +STRING_CHCP_ERROR1, "Active code page: %u\n" +STRING_CHCP_ERROR2, "Invalid parameter format - %s\n" +STRING_CHCP_ERROR3, "Parameter format incorrect - %s\n" +STRING_CHCP_ERROR4, "Invalid code page\n" STRING_CHOICE_ERROR, "Invalid option. Expected format: /C[:]options" STRING_CHOICE_ERROR_TXT, "Invalid option. Expected format: /T[:]c,nn" STRING_CHOICE_ERROR_OPTION, "Illegal Option: %s" +STRING_CMD_ERROR1, "Can't redirect input from file %s\n" +STRING_CMD_ERROR2, "Error creating temporary file for pipe data\n" +STRING_CMD_ERROR3, "Can't redirect to file %s\n" +STRING_CMD_ERROR4, "Running %s...\n" +STRING_CMD_ERROR5, "Running cmdexit.bat...\n" STRING_PARAM_ERROR, "Required parameter missing\n"
-STRING_ALIAS_ERROR, "Command line too long after alias expansion!\n" - -STRING_BATCH_ERROR, "Error opening batch file\n" - - } _____
Modified: trunk/reactos/subsys/system/cmd/chcp.c --- trunk/reactos/subsys/system/cmd/chcp.c 2005-04-02 21:45:38 UTC (rev 14462) +++ trunk/reactos/subsys/system/cmd/chcp.c 2005-04-02 22:19:12 UTC (rev 14463) @@ -7,9 +7,12 @@
* 23-Dec-1998 (Eric Kohl ekohl@abo.rhein-zeitung.de) * Started. * + * 02-Apr-2005 (Magnus Olsen) magnus@greatlord.com) + * Remove all hardcode string to En.rc */
#include "precomp.h" +#include "resource.h"
#ifdef INCLUDE_CMD_CHCP
@@ -19,14 +22,13 @@ INT args; UINT uOldCodePage; UINT uNewCodePage; + WCHAR szMsg[RC_STRING_MAX_SIZE];
/* print help */ if (!_tcsncmp (param, _T("/?"), 2)) { - ConOutPuts (_T("Displays or sets the active code page number.\n\n" - "CHCP [nnn]\n\n" - " nnn Specifies the active code page number.\n\n" - "Type CHCP without a parameter to display the active code page number.")); + LoadString( GetModuleHandle(NULL), STRING_CHCP_HELP, (LPTSTR) szMsg,sizeof(szMsg)); + ConOutPuts (_T((LPTSTR)szMsg)); return 0; }
@@ -36,14 +38,18 @@ if (args == 0) { /* display active code page number */ - ConOutPrintf (_T("Active code page: %u\n"), GetConsoleCP ()); + LoadString( GetModuleHandle(NULL), STRING_CHCP_ERROR1, (LPTSTR) szMsg,sizeof(szMsg)); + ConErrPrintf (_T((LPTSTR)szMsg), GetConsoleCP ()); + return 0; }
if (args >= 2) { /* too many parameters */ - ConErrPrintf (_T("Invalid parameter format - %s\n"), param); + LoadString( GetModuleHandle(NULL), STRING_CHCP_ERROR2, (LPTSTR) szMsg,sizeof(szMsg)); + ConErrPrintf (_T((LPTSTR)szMsg), param); + return 1; }
@@ -55,14 +61,16 @@
if (uNewCodePage == 0) { - ConErrPrintf (_T("Parameter format incorrect - %s\n"), arg[0]); + LoadString( GetModuleHandle(NULL), STRING_CHCP_ERROR3, (LPTSTR) szMsg,sizeof(szMsg)); + ConErrPrintf (_T((LPTSTR)szMsg), arg[0]); freep (arg); return 1; }
if (!SetConsoleCP (uNewCodePage)) { - ConErrPrintf (_T("Invalid code page\n")); + LoadString( GetModuleHandle(NULL), STRING_CHCP_ERROR4, (LPTSTR) szMsg,sizeof(szMsg)); + ConErrPrintf (_T((LPTSTR)szMsg)); } else { _____
Modified: trunk/reactos/subsys/system/cmd/cmd.c --- trunk/reactos/subsys/system/cmd/cmd.c 2005-04-02 21:45:38 UTC (rev 14462) +++ trunk/reactos/subsys/system/cmd/cmd.c 2005-04-02 22:19:12 UTC (rev 14463) @@ -129,9 +129,13 @@
* * 12-Jul-2004 (Jens Collin jens.collin@lakhei.com) * Added ShellExecute call when all else fails to be able to "launch" any file. + * + * 02-Apr-2005 (Magnus Olsen) magnus@greatlord.com) + * Remove all hardcode string to En.rc */
#include "precomp.h" +#include "resource.h"
#ifndef NT_SUCCESS #define NT_SUCCESS(StatCode) ((NTSTATUS)(StatCode) >= 0) @@ -548,6 +552,7 @@ { TCHAR cmdline[CMDLINE_LENGTH]; LPTSTR s; + WCHAR szMsg[RC_STRING_MAX_SIZE]; #ifdef FEATURE_REDIRECTION TCHAR in[CMDLINE_LENGTH] = _T(""); TCHAR out[CMDLINE_LENGTH] = _T(""); @@ -629,13 +634,15 @@ FILE_ATTRIBUTE_NORMAL, NULL); if (hFile == INVALID_HANDLE_VALUE) { - ConErrPrintf (_T("Can't redirect input from file %s\n"), in); + LoadString( GetModuleHandle(NULL), STRING_CMD_ERROR1, (LPTSTR) szMsg,sizeof(szMsg)); + ConErrPrintf (_T((LPTSTR)szMsg), in); return; }
if (!SetStdHandle (STD_INPUT_HANDLE, hFile)) { - ConErrPrintf (_T("Can't redirect input from file %s\n"), in); + LoadString( GetModuleHandle(NULL), STRING_CMD_ERROR1, (LPTSTR) szMsg,sizeof(szMsg)); + ConErrPrintf (_T((LPTSTR)szMsg), in); return; } #ifdef _DEBUG @@ -659,7 +666,9 @@ TRUNCATE_EXISTING, FILE_ATTRIBUTE_TEMPORARY, NULL);
if (hFile[1] == INVALID_HANDLE_VALUE){ - ConErrPrintf (_T("Error creating temporary file for pipe data\n")); + + LoadString( GetModuleHandle(NULL), STRING_CMD_ERROR2, (LPTSTR) szMsg,sizeof(szMsg)); + ConErrPrintf (_T((LPTSTR)szMsg)); return; }
@@ -711,13 +720,16 @@ FILE_ATTRIBUTE_NORMAL, NULL); if (hFile == INVALID_HANDLE_VALUE) { - ConErrPrintf (_T("Can't redirect to file %s\n"), out); + LoadString( GetModuleHandle(NULL), STRING_CMD_ERROR3, (LPTSTR) szMsg,sizeof(szMsg)); + ConErrPrintf (_T((LPTSTR)szMsg), out); + return; }
if (!SetStdHandle (STD_OUTPUT_HANDLE, hFile)) { - ConErrPrintf (_T("Can't redirect to file %s\n"), out); + LoadString( GetModuleHandle(NULL), STRING_CMD_ERROR3, (LPTSTR) szMsg,sizeof(szMsg)); + ConErrPrintf (_T((LPTSTR)szMsg), out); return; }
@@ -770,13 +782,17 @@ NULL); if (hFile == INVALID_HANDLE_VALUE) { - ConErrPrintf (_T("Can't redirect to file %s\n"), err); + LoadString( GetModuleHandle(NULL), STRING_CMD_ERROR3, (LPTSTR) szMsg,sizeof(szMsg)); + ConErrPrintf (_T((LPTSTR)szMsg), err); + return; } } if (!SetStdHandle (STD_ERROR_HANDLE, hFile)) { - ConErrPrintf (_T("Can't redirect to file %s\n"), err); + LoadString( GetModuleHandle(NULL), STRING_CMD_ERROR3, (LPTSTR) szMsg,sizeof(szMsg)); + ConErrPrintf (_T((LPTSTR)szMsg), err); + return; }
@@ -906,6 +922,7 @@ LPTSTR ip; LPTSTR cp; BOOL bEchoThisLine; +
do { @@ -1018,6 +1035,7 @@ */ BOOL WINAPI BreakHandler (DWORD dwCtrlType) { + if ((dwCtrlType != CTRL_C_EVENT) && (dwCtrlType != CTRL_BREAK_EVENT)) return FALSE; @@ -1058,26 +1076,36 @@ static VOID ShowCommands (VOID) { + WCHAR szMsg[RC_STRING_MAX_SIZE]; + /* print command list */ - ConOutPrintf (_T("\nInternal commands available:\n")); + LoadString( GetModuleHandle(NULL), STRING_CMD_HELP1, (LPTSTR) szMsg,sizeof(szMsg)); + ConOutPrintf (_T((LPTSTR)szMsg)); PrintCommandList ();
/* print feature list */ - ConOutPuts (_T("\nFeatures available:")); -#ifdef FEATURE_ALIASES - ConOutPuts (_T(" [aliases]")); + LoadString( GetModuleHandle(NULL), STRING_CMD_HELP2, (LPTSTR) szMsg,sizeof(szMsg)); + ConOutPuts (_T((LPTSTR)szMsg)); + +#ifdef FEATURE_ALIASES + LoadString( GetModuleHandle(NULL), STRING_CMD_HELP3, (LPTSTR) szMsg,sizeof(szMsg)); + ConOutPuts (_T((LPTSTR)szMsg)); #endif #ifdef FEATURE_HISTORY - ConOutPuts (_T(" [history]")); + LoadString( GetModuleHandle(NULL), STRING_CMD_HELP4, (LPTSTR) szMsg,sizeof(szMsg)); + ConOutPuts (_T((LPTSTR)szMsg)); #endif #ifdef FEATURE_UNIX_FILENAME_COMPLETION - ConOutPuts (_T(" [unix filename completion]")); + LoadString( GetModuleHandle(NULL), STRING_CMD_HELP5, (LPTSTR) szMsg,sizeof(szMsg)); + ConOutPuts (_T((LPTSTR)szMsg)); #endif #ifdef FEATURE_DIRECTORY_STACK - ConOutPuts (_T(" [directory stack]")); + LoadString( GetModuleHandle(NULL), STRING_CMD_HELP6, (LPTSTR) szMsg,sizeof(szMsg)); + ConOutPuts (_T((LPTSTR)szMsg)); #endif #ifdef FEATURE_REDIRECTION - ConOutPuts (_T(" [redirections and piping]")); + LoadString( GetModuleHandle(NULL), STRING_CMD_HELP7, (LPTSTR) szMsg,sizeof(szMsg)); + ConOutPuts (_T((LPTSTR)szMsg)); #endif ConOutChar (_T('\n')); } @@ -1096,6 +1124,8 @@ TCHAR commandline[CMDLINE_LENGTH]; TCHAR ModuleName[_MAX_PATH + 1]; INT i; + WCHAR szMsg[RC_STRING_MAX_SIZE]; + //INT len; //TCHAR *ptr, *cmdLine;
@@ -1124,15 +1154,8 @@
if (argc >= 2 && !_tcsncmp (argv[1], _T("/?"), 2)) { - ConOutPuts (_T("Starts a new instance of the ReactOS command line interpreter.\n" - "\n" - "CMD [/[C|K] command][/P][/Q][/T:bf]\n" - "\n" - " /C command Runs the specified command and terminates.\n" - " /K command Runs the specified command and remains.\n" - " /P CMD becomes permanent and runs autoexec.bat\n" - " (cannot be terminated).\n" - " /T:bf Sets the background/foreground color (see COLOR command).")); + LoadString( GetModuleHandle(NULL), STRING_CMD_HELP8, (LPTSTR) szMsg,sizeof(szMsg)); + ConOutPuts (_T((LPTSTR)szMsg)); ExitProcess (0); } SetConsoleMode (hIn, ENABLE_PROCESSED_INPUT); @@ -1236,7 +1259,8 @@
if (IsExistingFile (_T("commandline"))) { - ConErrPrintf (_T("Running %s...\n", commandline)); + LoadString( GetModuleHandle(NULL), STRING_CMD_ERROR4, (LPTSTR) szMsg,sizeof(szMsg)); + ConErrPrintf (_T((LPTSTR)szMsg), commandline); ParseCommandLine (commandline); } } @@ -1267,15 +1291,20 @@
static VOID Cleanup (int argc, TCHAR *argv[]) { + WCHAR szMsg[RC_STRING_MAX_SIZE]; + /* run cmdexit.bat */ if (IsExistingFile (_T("cmdexit.bat"))) { - ConErrPrintf (_T("Running cmdexit.bat...\n")); + LoadString( GetModuleHandle(NULL), STRING_CMD_ERROR5, (LPTSTR) szMsg,sizeof(szMsg)); + ConErrPrintf (_T((LPTSTR)szMsg)); + ParseCommandLine (_T("cmdexit.bat")); } else if (IsExistingFile (_T("\cmdexit.bat"))) { - ConErrPrintf (_T("Running \cmdexit.bat...\n")); + LoadString( GetModuleHandle(NULL), STRING_CMD_ERROR5, (LPTSTR) szMsg,sizeof(szMsg)); + ConErrPrintf (_T((LPTSTR)szMsg)); ParseCommandLine (_T("\cmdexit.bat")); } #ifndef __REACTOS__ @@ -1291,7 +1320,8 @@
if (IsExistingFile (_T("commandline"))) { - ConErrPrintf (_T("Running %s...\n"), commandline); + LoadString( GetModuleHandle(NULL), STRING_CMD_ERROR4, (LPTSTR) szMsg,sizeof(szMsg)); + ConErrPrintf (_T((LPTSTR)szMsg), commandline); ParseCommandLine (commandline); } } _____
Modified: trunk/reactos/subsys/system/cmd/resource.h --- trunk/reactos/subsys/system/cmd/resource.h 2005-04-02 21:45:38 UTC (rev 14462) +++ trunk/reactos/subsys/system/cmd/resource.h 2005-04-02 22:19:12 UTC (rev 14463) @@ -5,22 +5,40 @@
#define STRING_ALIAS_ERROR 300 #define STRING_BATCH_ERROR 301 -#define STRING_CHOICE_ERROR 302 -#define STRING_CHOICE_ERROR_TXT 303 -#define STRING_CHOICE_ERROR_OPTION 304 -#define STRING_PARAM_ERROR 305 +#define STRING_CHCP_ERROR1 302 +#define STRING_CHCP_ERROR2 303 +#define STRING_CHCP_ERROR3 304 +#define STRING_CHCP_ERROR4 305 +#define STRING_CHOICE_ERROR 306 +#define STRING_CHOICE_ERROR_TXT 307 +#define STRING_CHOICE_ERROR_OPTION 308 +#define STRING_CMD_ERROR1 309 +#define STRING_CMD_ERROR2 310 +#define STRING_CMD_ERROR3 311 +#define STRING_CMD_ERROR4 312 +#define STRING_CMD_ERROR5 313 +#define STRING_PARAM_ERROR 314
#define STRING_ATTRIB_HELP 400 #define STRING_ALIAS_HELP 401 #define STRING_BEEP_HELP 402 #define STRING_CALL_HELP 403 #define STRING_CD_HELP 404 -#define STRING_CHOICE_HELP 405 -#define STRING_CLS_HELP 406 -#define STRING_EXIT_HELP 407 -#define STRING_MKDIR_HELP 408 -#define STRING_RMDIR_HELP 409 -#define STRING_REM_HELP 410 +#define STRING_CHCP_HELP 405 +#define STRING_CHOICE_HELP 406 +#define STRING_CLS_HELP 407 +#define STRING_CMD_HELP1 408 +#define STRING_CMD_HELP2 409 +#define STRING_CMD_HELP3 410 +#define STRING_CMD_HELP4 411 +#define STRING_CMD_HELP5 412 +#define STRING_CMD_HELP6 413 +#define STRING_CMD_HELP7 414 +#define STRING_CMD_HELP8 415 +#define STRING_EXIT_HELP 416 +#define STRING_MKDIR_HELP 417 +#define STRING_RMDIR_HELP 418 +#define STRING_REM_HELP 419