ReactOS  0.4.15-dev-1184-g23e04ae
error.c
Go to the documentation of this file.
1 /*
2  * ERROR.C - error reporting functions.
3  *
4  *
5  * History:
6  *
7  * 07/12/98 (Rob Lake)
8  * started
9  *
10  * 27-Jul-1998 (John P Price <linux-guru@gcfl.net>)
11  * added config.h include
12  *
13  * 24-Jan-1999 (Eric Kohl)
14  * Redirection safe!
15  *
16  * 02-Feb-1999 (Eric Kohl)
17  * Use FormatMessage() for error reports.
18  *
19  * 28-Apr-2005 (Magnus Olsen <magnus@greatlord.com>)
20  * Remove all hardcoded strings in En.rc
21  */
22 
23 #include "precomp.h"
24 
25 VOID
27  IN DWORD dwErrorCode,
28  IN PCTSTR szFormat OPTIONAL,
29  ...)
30 {
31  va_list arg_ptr;
32  PTSTR szError;
34  TCHAR szMessage[1024];
35 
36  if (dwErrorCode == ERROR_SUCCESS)
37  return;
38 
39  *szMessage = 0;
40  if (szFormat)
41  {
42  va_start(arg_ptr, szFormat);
43  _vstprintf(szMessage, szFormat, arg_ptr);
44  va_end(arg_ptr);
45  }
46 
49  (PTSTR)&szError, 0, NULL))
50  {
51  ConErrPrintf(_T("%s%s%s"), szError, szMessage, (*szMessage ? _T("\n") : _T("")));
52  if (szError)
53  LocalFree(szError);
54  return;
55  }
56 
57  /* Fall back just in case the error is not defined */
59  if (szFormat)
60  ConErrPrintf(_T("%s -- %s\n"), szMsg, szMessage);
61  else
62  ConErrPrintf(_T("%s\n"), szMsg);
63 }
64 
66 {
68  nErrorLevel = 1;
69 }
70 
71 
73 {
75  nErrorLevel = 1;
76 }
77 
78 
80 {
82  nErrorLevel = 1;
83 }
84 
85 
87 {
89  nErrorLevel = 1;
90 }
91 
92 
94 {
96  nErrorLevel = 1;
97 }
98 
99 
101 {
102  TCHAR szMsg[RC_STRING_MAX_SIZE];
103 
105  ConErrPrintf(_T("%s - %s\n"), szMsg, s);
106  nErrorLevel = 1;
107 }
108 
109 
111 {
113  nErrorLevel = 1;
114 }
115 
116 
118 {
120  nErrorLevel = 1;
121 }
122 
123 
125 {
127  nErrorLevel = 9009;
128 }
129 
130 
132 {
134  nErrorLevel = 1;
135 }
136 
137 
139 {
141  nErrorLevel = 1;
142 }
143 
144 
146 {
148  nErrorLevel = 1;
149 }
150 
151 
153 {
154  TCHAR szMsg[RC_STRING_MAX_SIZE];
155 
157 
158  if (s)
159  ConErrPrintf(_T("%s - %s\n"), szMsg, s);
160  else
161  ConErrPrintf(_T("%s.\n"), szMsg);
162 
163  nErrorLevel = 1;
164 }
165 
166 
168 {
170 }
171 
172 /* EOF */
INT nErrorLevel
Definition: cmd.c:158
#define STRING_ERROR_CANNOTPIPE
Definition: resource.h:15
#define IN
Definition: typedefs.h:39
#define ERROR_SUCCESS
Definition: deptool.c:10
LPCSTR PCTSTR
Definition: ntbasedef.h:489
#define STRING_CONSOLE_ERROR
Definition: resource.h:6
VOID error_out_of_memory(VOID)
Definition: error.c:138
VOID error_invalid_drive(VOID)
Definition: error.c:117
#define LANG_NEUTRAL
Definition: nls.h:22
#define ConErrResPuts(uID)
Definition: console.h:39
#define SUBLANG_DEFAULT
Definition: nls.h:168
#define _vstprintf
Definition: tchar.h:540
VOID error_parameter_format(TCHAR ch)
Definition: error.c:65
#define ARRAYSIZE(array)
Definition: filtermapper.c:47
VOID error_too_many_parameters(PCTSTR s)
Definition: error.c:79
#define STRING_ERROR_REQ_PARAM_MISSING
Definition: resource.h:10
VOID error_req_param_missing(VOID)
Definition: error.c:110
#define STRING_ERROR_INVALID_DRIVE
Definition: resource.h:13
#define STRING_ERROR_ERROR2
Definition: resource.h:44
#define va_end(ap)
Definition: acmsvcex.h:90
#define ConErrResPrintf(uID,...)
Definition: console.h:51
VOID msg_pause(VOID)
Definition: error.c:167
#define FORMAT_MESSAGE_ALLOCATE_BUFFER
Definition: winbase.h:400
#define STRING_ERROR_INVALID_PARAM_FORMAT
Definition: resource.h:5
VOID ErrorMessage(IN DWORD dwErrorCode, IN PCTSTR szFormat OPTIONAL,...)
Definition: error.c:26
smooth NULL
Definition: ftsmooth.c:416
VOID error_file_not_found(VOID)
Definition: error.c:93
char * va_list
Definition: acmsvcex.h:78
CHAR * PTSTR
Definition: xmlstorage.h:191
#define FORMAT_MESSAGE_FROM_SYSTEM
Definition: winbase.h:404
VOID ConErrPrintf(LPTSTR szFormat,...)
Definition: tee.c:36
#define STRING_ERROR_OUT_OF_MEMORY
Definition: resource.h:14
char TCHAR
Definition: xmlstorage.h:189
#define _T(x)
Definition: vfdio.h:22
#define STRING_ERROR_BADCOMMAND
Definition: resource.h:13
unsigned long DWORD
Definition: ntddk_ex.h:95
#define STRING_ERROR_D_PAUSEMSG
Definition: resource.h:16
#define FormatMessage
Definition: winbase.h:3635
VOID error_invalid_switch(TCHAR ch)
Definition: error.c:72
VOID error_sfile_not_found(PCTSTR s)
Definition: error.c:100
GLdouble s
Definition: gl.h:2039
#define STRING_ERROR_PATH_NOT_FOUND
Definition: resource.h:8
VOID error_bad_command(PCTSTR s)
Definition: error.c:124
#define STRING_ERROR_INVALID_SWITCH
Definition: resource.h:6
HLOCAL NTAPI LocalFree(HLOCAL hMem)
Definition: heapmem.c:1577
#define va_start(ap, A)
Definition: acmsvcex.h:91
HANDLE CMD_ModuleHandle
Definition: cmd.c:165
VOID error_path_not_found(VOID)
Definition: error.c:86
#define STRING_ERROR_TOO_MANY_PARAMETERS
Definition: resource.h:7
#define STRING_ERROR_FILE_NOT_FOUND
Definition: resource.h:9
#define ConOutResPuts(uID)
Definition: console.h:36
VOID error_no_pipe(VOID)
Definition: error.c:131
VOID error_syntax(PCTSTR s)
Definition: error.c:152
#define MAKELANGID(p, s)
Definition: nls.h:15
#define STRING_ERROR_PARAMETERF_ERROR
Definition: resource.h:5
VOID error_invalid_parameter_format(PCTSTR s)
Definition: error.c:145
#define LoadString
Definition: winuser.h:5794
#define RC_STRING_MAX_SIZE
Definition: resource.h:3
PULONG MinorVersion OPTIONAL
Definition: CrossNt.h:68