https://git.reactos.org/?p=reactos.git;a=commitdiff;h=d5c74ae6fe841863b6272…
commit d5c74ae6fe841863b62722ff5424a1b023761e40
Author: Eric Kohl <eric.kohl(a)reactos.org>
AuthorDate: Sun Dec 23 14:16:53 2018 +0100
Commit: Eric Kohl <eric.kohl(a)reactos.org>
CommitDate: Sun Dec 23 14:18:51 2018 +0100
[NET] Load netmsg.dll right from the start and print some messages using netmsg.dll
rather than local strings.
@Translators: Please start translating messages from netmsgmsg.mc and errorcodes.mc
(located in sdk\include\reactos\mc). They will be used instead of local strings.
---
base/applications/network/net/cmdConfig.c | 2 +-
base/applications/network/net/cmdGroup.c | 1 +
base/applications/network/net/cmdHelpMsg.c | 17 +--------
base/applications/network/net/cmdLocalGroup.c | 1 +
base/applications/network/net/cmdStatistics.c | 2 +-
base/applications/network/net/cmdUse.c | 4 +--
base/applications/network/net/main.c | 51 +++++++++++++++------------
base/applications/network/net/net.h | 2 ++
8 files changed, 38 insertions(+), 42 deletions(-)
diff --git a/base/applications/network/net/cmdConfig.c
b/base/applications/network/net/cmdConfig.c
index 0211b9bfec..df7fce2c96 100644
--- a/base/applications/network/net/cmdConfig.c
+++ b/base/applications/network/net/cmdConfig.c
@@ -302,7 +302,7 @@ done:
NetApiBufferFree(ServerInfo);
if (result == 0)
- ConResPuts(StdOut, IDS_ERROR_NO_ERROR);
+ PrintErrorMessage(ERROR_SUCCESS);
return result;
}
\ No newline at end of file
diff --git a/base/applications/network/net/cmdGroup.c
b/base/applications/network/net/cmdGroup.c
index ccb5c6cb04..4fc1e7e08d 100644
--- a/base/applications/network/net/cmdGroup.c
+++ b/base/applications/network/net/cmdGroup.c
@@ -255,6 +255,7 @@ cmdGroup(
}
else
{
+ PrintErrorMessage(3506/*, argv[i]*/);
result = 1;
goto done;
}
diff --git a/base/applications/network/net/cmdHelpMsg.c
b/base/applications/network/net/cmdHelpMsg.c
index 801def5cce..faa54d2b6e 100644
--- a/base/applications/network/net/cmdHelpMsg.c
+++ b/base/applications/network/net/cmdHelpMsg.c
@@ -13,8 +13,6 @@
INT cmdHelpMsg(INT argc, WCHAR **argv)
{
- WCHAR szBuffer[MAX_PATH];
- HMODULE hMsgDll = NULL;
INT i;
LONG errNum;
PWSTR endptr;
@@ -52,20 +50,9 @@ INT cmdHelpMsg(INT argc, WCHAR **argv)
if (errNum >= MIN_LANMAN_MESSAGE_ID && errNum <=
MAX_LANMAN_MESSAGE_ID)
{
- /* Load netmsg.dll */
- GetSystemDirectoryW(szBuffer, ARRAYSIZE(szBuffer));
- wcscat(szBuffer, L"\\netmsg.dll");
-
- hMsgDll = LoadLibrary(szBuffer);
- if (hMsgDll == NULL)
- {
- ConPrintf(StdOut, L"Failed to load netmsg.dll\n");
- return 0;
- }
-
FormatMessageW(FORMAT_MESSAGE_ALLOCATE_BUFFER | FORMAT_MESSAGE_FROM_HMODULE |
FORMAT_MESSAGE_ARGUMENT_ARRAY,
- hMsgDll,
+ hModuleNetMsg,
errNum,
LANG_USER_DEFAULT,
(LPWSTR)&pBuffer,
@@ -80,8 +67,6 @@ INT cmdHelpMsg(INT argc, WCHAR **argv)
{
PrintErrorMessage(3871);
}
-
- FreeLibrary(hMsgDll);
}
else
{
diff --git a/base/applications/network/net/cmdLocalGroup.c
b/base/applications/network/net/cmdLocalGroup.c
index 44489b377f..e6970926ee 100644
--- a/base/applications/network/net/cmdLocalGroup.c
+++ b/base/applications/network/net/cmdLocalGroup.c
@@ -275,6 +275,7 @@ cmdLocalGroup(
}
else
{
+ PrintErrorMessage(3506/*, argv[i]*/);
result = 1;
goto done;
}
diff --git a/base/applications/network/net/cmdStatistics.c
b/base/applications/network/net/cmdStatistics.c
index 62bbca716c..652445ace4 100644
--- a/base/applications/network/net/cmdStatistics.c
+++ b/base/applications/network/net/cmdStatistics.c
@@ -294,7 +294,7 @@ cmdStatistics(
}
if (result == 0)
- ConResPuts(StdOut, IDS_ERROR_NO_ERROR);
+ PrintErrorMessage(ERROR_SUCCESS);
return result;
}
\ No newline at end of file
diff --git a/base/applications/network/net/cmdUse.c
b/base/applications/network/net/cmdUse.c
index 59bc580a4d..1c1c479eff 100644
--- a/base/applications/network/net/cmdUse.c
+++ b/base/applications/network/net/cmdUse.c
@@ -109,7 +109,7 @@ cmdUse(
{
Status = EnumerateConnections(NULL);
if (Status == NO_ERROR)
- ConResPrintf(StdOut, IDS_ERROR_NO_ERROR);
+ PrintErrorMessage(ERROR_SUCCESS);
else
PrintError(Status);
@@ -125,7 +125,7 @@ cmdUse(
Status = EnumerateConnections(argv[2]);
if (Status == NO_ERROR)
- ConResPrintf(StdOut, IDS_ERROR_NO_ERROR);
+ PrintErrorMessage(ERROR_SUCCESS);
else
PrintError(Status);
diff --git a/base/applications/network/net/main.c b/base/applications/network/net/main.c
index 0c932a23f3..34637202c7 100644
--- a/base/applications/network/net/main.c
+++ b/base/applications/network/net/main.c
@@ -45,6 +45,7 @@ COMMAND cmds[] =
{NULL, NULL}
};
+HMODULE hModuleNetMsg = NULL;
VOID
@@ -80,28 +81,15 @@ VOID
PrintErrorMessage(
DWORD dwError)
{
- WCHAR szDllBuffer[MAX_PATH];
WCHAR szErrorBuffer[16];
- HMODULE hMsgDll = NULL;
PWSTR pBuffer;
PWSTR pErrorInserts[2] = {NULL, NULL};
- /* Load netmsg.dll */
- GetSystemDirectoryW(szDllBuffer, ARRAYSIZE(szDllBuffer));
- wcscat(szDllBuffer, L"\\netmsg.dll");
-
- hMsgDll = LoadLibrary(szDllBuffer);
- if (hMsgDll == NULL)
- {
- ConPrintf(StdErr, L"Failed to load netmsg.dll\n");
- return;
- }
-
if (dwError >= MIN_LANMAN_MESSAGE_ID && dwError <=
MAX_LANMAN_MESSAGE_ID)
{
FormatMessageW(FORMAT_MESSAGE_ALLOCATE_BUFFER | FORMAT_MESSAGE_FROM_HMODULE |
FORMAT_MESSAGE_IGNORE_INSERTS,
- hMsgDll,
+ hModuleNetMsg,
dwError,
LANG_USER_DEFAULT,
(LPWSTR)&pBuffer,
@@ -141,7 +129,7 @@ PrintErrorMessage(
/* Format and print the 3514 message */
FormatMessageW(FORMAT_MESSAGE_ALLOCATE_BUFFER | FORMAT_MESSAGE_FROM_HMODULE |
FORMAT_MESSAGE_ARGUMENT_ARRAY,
- hMsgDll,
+ hModuleNetMsg,
3514,
LANG_USER_DEFAULT,
(LPWSTR)&pBuffer,
@@ -154,8 +142,6 @@ PrintErrorMessage(
pBuffer = NULL;
}
}
-
- FreeLibrary(hMsgDll);
}
@@ -198,29 +184,50 @@ ReadFromConsole(
int wmain(int argc, WCHAR **argv)
{
+ WCHAR szDllBuffer[MAX_PATH];
PCOMMAND cmdptr;
+ int nResult = 0;
+ BOOL bRun = FALSE;
/* Initialize the Console Standard Streams */
ConInitStdStreams();
- if (argc < 2)
+ /* Load netmsg.dll */
+ GetSystemDirectoryW(szDllBuffer, ARRAYSIZE(szDllBuffer));
+ wcscat(szDllBuffer, L"\\netmsg.dll");
+
+ hModuleNetMsg = LoadLibrary(szDllBuffer);
+ if (hModuleNetMsg == NULL)
{
- ConResPuts(StdOut, IDS_NET_SYNTAX);
+ ConPrintf(StdErr, L"Failed to load netmsg.dll\n");
return 1;
}
+ if (argc < 2)
+ {
+ nResult = 1;
+ goto done;
+ }
+
/* Scan the command table */
for (cmdptr = cmds; cmdptr->name; cmdptr++)
{
if (_wcsicmp(argv[1], cmdptr->name) == 0)
{
- return cmdptr->func(argc, argv);
+ nResult = cmdptr->func(argc, argv);
+ bRun = TRUE;
+ break;
}
}
- ConResPuts(StdOut, IDS_NET_SYNTAX);
+done:
+ if (bRun == FALSE)
+ ConResPuts(StdOut, IDS_NET_SYNTAX);
- return 1;
+ if (hModuleNetMsg != NULL)
+ FreeLibrary(hModuleNetMsg);
+
+ return nResult;
}
INT unimplemented(INT argc, WCHAR **argv)
diff --git a/base/applications/network/net/net.h b/base/applications/network/net/net.h
index e075a55a6e..4e2f4a1518 100644
--- a/base/applications/network/net/net.h
+++ b/base/applications/network/net/net.h
@@ -26,6 +26,8 @@
#include "resource.h"
+extern HMODULE hModuleNetMsg;
+
VOID
PrintPaddedResourceString(
UINT uID,