https://git.reactos.org/?p=reactos.git;a=commitdiff;h=7292af515dc13b5703154…
commit 7292af515dc13b5703154c1f4e12e7fd4b7aca47
Author: Eric Kohl <eric.kohl(a)reactos.org>
AuthorDate: Sun Dec 23 16:47:16 2018 +0100
Commit: Eric Kohl <eric.kohl(a)reactos.org>
CommitDate: Sun Dec 23 16:50:25 2018 +0100
[NET] Move ACCOUNTS command syntax and help text into a message table.
---
base/applications/network/net/CMakeLists.txt | 1 +
base/applications/network/net/cmdAccounts.c | 15 +-
base/applications/network/net/help.c | 13 +-
base/applications/network/net/lang/en-US.rc | 38 ---
base/applications/network/net/lang/es-ES.rc | 38 ---
base/applications/network/net/lang/pl-PL.rc | 41 ---
base/applications/network/net/lang/ro-RO.rc | 38 ---
base/applications/network/net/lang/ru-RU.rc | 38 ---
base/applications/network/net/lang/tr-TR.rc | 38 ---
base/applications/network/net/lang/zh-CN.rc | 38 ---
base/applications/network/net/lang/zh-TW.rc | 38 ---
base/applications/network/net/main.c | 24 ++
base/applications/network/net/net.h | 5 +
base/applications/network/net/net.rc | 2 +
base/applications/network/net/resource.h | 11 -
sdk/include/reactos/mc/CMakeLists.txt | 1 +
sdk/include/reactos/mc/net_msg.mc | 403 +++++++++++++++++++++++++++
17 files changed, 441 insertions(+), 341 deletions(-)
diff --git a/base/applications/network/net/CMakeLists.txt b/base/applications/network/net/CMakeLists.txt
index 03f772bc09..cee4e856d3 100644
--- a/base/applications/network/net/CMakeLists.txt
+++ b/base/applications/network/net/CMakeLists.txt
@@ -23,6 +23,7 @@ list(APPEND SOURCE
add_executable(net ${SOURCE} net.rc)
set_module_type(net win32cui UNICODE)
target_link_libraries(net conutils ${PSEH_LIB})
+add_dependencies(net net_msg)
add_importlibs(net advapi32 netapi32 mpr msvcrt kernel32 ntdll)
add_pch(net net.h SOURCE)
add_cd_file(TARGET net DESTINATION reactos/system32 FOR all)
diff --git a/base/applications/network/net/cmdAccounts.c b/base/applications/network/net/cmdAccounts.c
index 454aeeb892..2ffc6eb2c5 100644
--- a/base/applications/network/net/cmdAccounts.c
+++ b/base/applications/network/net/cmdAccounts.c
@@ -37,7 +37,7 @@ cmdAccounts(
{
/* Print short syntax help */
ConResPuts(StdOut, IDS_GENERIC_SYNTAX);
- ConResPuts(StdOut, IDS_ACCOUNTS_SYNTAX);
+ PrintNetMessage(MSG_ACCOUNTS_SYNTAX);
return 0;
}
@@ -45,17 +45,8 @@ cmdAccounts(
{
/* Print full help text*/
ConResPuts(StdOut, IDS_GENERIC_SYNTAX);
- ConResPuts(StdOut, IDS_ACCOUNTS_SYNTAX);
- ConResPuts(StdOut, IDS_ACCOUNTS_HELP_1);
- ConResPuts(StdOut, IDS_ACCOUNTS_HELP_2);
- ConResPuts(StdOut, IDS_ACCOUNTS_HELP_3);
- ConResPuts(StdOut, IDS_ACCOUNTS_HELP_4);
- ConResPuts(StdOut, IDS_ACCOUNTS_HELP_5);
- ConResPuts(StdOut, IDS_ACCOUNTS_HELP_6);
- ConResPuts(StdOut, IDS_ACCOUNTS_HELP_7);
- ConResPuts(StdOut, IDS_ACCOUNTS_HELP_8);
- ConResPuts(StdOut, IDS_ACCOUNTS_HELP_9);
- ConResPuts(StdOut, IDS_ACCOUNTS_HELP_10);
+ PrintNetMessage(MSG_ACCOUNTS_SYNTAX);
+ PrintNetMessage(MSG_ACCOUNTS_HELP);
ConResPuts(StdOut, IDS_GENERIC_PAGE);
return 0;
}
diff --git a/base/applications/network/net/help.c b/base/applications/network/net/help.c
index 8d70860ad9..9dcbe34028 100644
--- a/base/applications/network/net/help.c
+++ b/base/applications/network/net/help.c
@@ -22,17 +22,8 @@ INT cmdHelp(INT argc, WCHAR **argv)
*/
if (_wcsicmp(argv[2], L"ACCOUNTS") == 0)
{
- ConResPuts(StdOut, IDS_ACCOUNTS_SYNTAX);
- ConResPuts(StdOut, IDS_ACCOUNTS_HELP_1);
- ConResPuts(StdOut, IDS_ACCOUNTS_HELP_2);
- ConResPuts(StdOut, IDS_ACCOUNTS_HELP_3);
- ConResPuts(StdOut, IDS_ACCOUNTS_HELP_4);
- ConResPuts(StdOut, IDS_ACCOUNTS_HELP_5);
- ConResPuts(StdOut, IDS_ACCOUNTS_HELP_6);
- ConResPuts(StdOut, IDS_ACCOUNTS_HELP_7);
- ConResPuts(StdOut, IDS_ACCOUNTS_HELP_8);
- ConResPuts(StdOut, IDS_ACCOUNTS_HELP_9);
- ConResPuts(StdOut, IDS_ACCOUNTS_HELP_10);
+ PrintNetMessage(MSG_ACCOUNTS_SYNTAX);
+ PrintNetMessage(MSG_ACCOUNTS_HELP);
ConResPuts(StdOut, IDS_GENERIC_PAGE);
return 0;
}
diff --git a/base/applications/network/net/lang/en-US.rc b/base/applications/network/net/lang/en-US.rc
index ebbe8d039a..5d03128159 100644
--- a/base/applications/network/net/lang/en-US.rc
+++ b/base/applications/network/net/lang/en-US.rc
@@ -2,44 +2,6 @@ LANGUAGE LANG_ENGLISH, SUBLANG_ENGLISH_US
STRINGTABLE
BEGIN
- IDS_ACCOUNTS_SYNTAX "NET ACCOUNTS [/FORCELOGOFF:{Minutes|NO}] [/MINPWLEN:Length]\n\
- [/MAXPWAGE:{Days|UNLIMITED}] [/MINPWAGE:Days]\n\
- [/UNIQUEPW:Count] [/DOMAIN]\n\n"
- IDS_ACCOUNTS_HELP_1 "NET ACCOUNTS updates the user accounts database and modifies password\n\
-and logon requirements for all accounts.\n\
-When used without parameters, NET ACCOUNTS displays the current settings for\n\
-passwords, logon limitations, and domain information.\n\n"
- IDS_ACCOUNTS_HELP_2 "Two conditions are required in order for options used with\n\
-NET ACCOUNTS to take effect.\n\n"
- IDS_ACCOUNTS_HELP_3 "- The password and logon requirements are only effective if user\n\
- accounts havebeen set up (user User Manager or the NET USER command).\n\n"
- IDS_ACCOUNTS_HELP_4 "- The Net Logon service must be running on all servers in the domain\n\
- that verify logon. Net Logon is started autmatically when the\n\
- operating system starts.\n\n"
- IDS_ACCOUNTS_HELP_5 "/FORECELOGOFF:{minutes | NO} Sets the number of minutes a user has before\n\
- being forced to log off when the\n\
- account expires or valid logon hours expire.\n\
- NO, the default, prevents forced logoff.\n"
- IDS_ACCOUNTS_HELP_6 "/MINPWLEN:length Sets the minimum number of characters for\n\
- a password. The range is 0-14 characters;\n\
- the default is 6 characters.\n"
- IDS_ACCOUNTS_HELP_7 "/MAXPWAGE:{days | UNLIMITED} Sets the maximum numer of days that a\n\
- password is valid. No limit is specified\n\
- by using UNLIMITED. /MAXPWAGE cannot be less\n\
- than /MINPWAGE. The range is 1-999; the\n\
- default is to leave the value unchanged.\n"
- IDS_ACCOUNTS_HELP_8 "/MINPWAGE:days Sets the minimum number of days that must\n\
- pass before a user can change a password.\n\
- A value of 0 sets no minimum time. The range\n\
- is 0-999; the default is 0 days. /MINPWAGE\n\
- cannot be more than /MAXPWAGE.\n"
- IDS_ACCOUNTS_HELP_9 "/UNIQUEPW:number Requires that a users passwords be unique\n\
- through the specified number of password\n\
- changes. The maximum value is 24.\n"
- IDS_ACCOUNTS_HELP_10 "/DOMAIN Performs the operation on a domain\n\
- controller of the current domain. Otherwise,\n\
- the operation is performed on the local\n\
- computer.\n\n"
IDS_COMPUTER_SYNTAX "NET COMPUTER \\computername {/ADD | /DEL}\n\n"
IDS_COMPUTER_HELP_1 "NET COMPUTER adds or deletes computers from a domain database. This\n\
command is available only on server operating systems.\n\n"
diff --git a/base/applications/network/net/lang/es-ES.rc b/base/applications/network/net/lang/es-ES.rc
index 45619ea332..603513b9d9 100644
--- a/base/applications/network/net/lang/es-ES.rc
+++ b/base/applications/network/net/lang/es-ES.rc
@@ -5,44 +5,6 @@ LANGUAGE LANG_SPANISH, SUBLANG_NEUTRAL
STRINGTABLE
BEGIN
- IDS_ACCOUNTS_SYNTAX "NET ACCOUNTS [/FORCELOGOFF:{minutos | NO}] [/MINPWLEN:longitud]\n\
- [/MAXPWAGE:{días | UNLIMITED}] [/MINPWAGE:días]\n\
- [/UNIQUEPW:número] [/DOMAIN]\n\n"
- IDS_ACCOUNTS_HELP_1 "NET ACCOUNTS updates the user accounts database and modifies password\n\
-and logon requirements for all accounts.\n\
-When used without parameters, NET ACCOUNTS displays the current settings for\n\
-passwords, logon limitations, and domain information.\n\n"
- IDS_ACCOUNTS_HELP_2 "Two conditions are required in order for options used with\n\
-NET ACCOUNTS to take effect.\n\n"
- IDS_ACCOUNTS_HELP_3 "- The password and logon requirements are only effective if user\n\
- accounts havebeen set up (user User Manager or the NET USER command).\n\n"
- IDS_ACCOUNTS_HELP_4 "- The Net Logon service must be running on all servers in the domain\n\
- that verify logon. Net Logon is started autmatically when the\n\
- operating system starts.\n\n"
- IDS_ACCOUNTS_HELP_5 "/FORECELOGOFF:{minutes | NO} Sets the number of minutes a user has before\n\
- being forced to log off when the\n\
- account expires or valid logon hours expire.\n\
- NO, the default, prevents forced logoff.\n"
- IDS_ACCOUNTS_HELP_6 "/MINPWLEN:length Sets the minimum number of characters for\n\
- a password. The range is 0-14 characters;\n\
- the default is 6 characters.\n"
- IDS_ACCOUNTS_HELP_7 "/MAXPWAGE:{days | UNLIMITED} Sets the maximum numer of days that a\n\
- password is valid. No limit is specified\n\
- by using UNLIMITED. /MAXPWAGE cannot be less\n\
- than /MINPWAGE. The range is 1-999; the\n\
- default is to leave the value unchanged.\n"
- IDS_ACCOUNTS_HELP_8 "/MINPWAGE:days Sets the minimum number of days that must\n\
- pass before a user can change a password.\n\
- A value of 0 sets no minimum time. The range\n\
- is 0-999; the default is 0 days. /MINPWAGE\n\
- cannot be more than /MAXPWAGE.\n"
- IDS_ACCOUNTS_HELP_9 "/UNIQUEPW:number Requires that a users passwords be unique\n\
- through the specified number of password\n\
- changes. The maximum value is 24.\n"
- IDS_ACCOUNTS_HELP_10 "/DOMAIN Performs the operation on a domain\n\
- controller of the current domain. Otherwise,\n\
- the operation is performed on the local\n\
- computer.\n\n"
IDS_COMPUTER_SYNTAX "NET COMPUTER \\computername {/ADD | /DEL}\n\n"
IDS_COMPUTER_HELP_1 "NET COMPUTER adds or deletes computers from a domain database. This\n\
command is available only on server operating systems.\n\n"
diff --git a/base/applications/network/net/lang/pl-PL.rc b/base/applications/network/net/lang/pl-PL.rc
index 08191b44a2..a718d45363 100644
--- a/base/applications/network/net/lang/pl-PL.rc
+++ b/base/applications/network/net/lang/pl-PL.rc
@@ -1,47 +1,6 @@
LANGUAGE LANG_POLISH, SUBLANG_DEFAULT
STRINGTABLE
BEGIN
- IDS_ACCOUNTS_SYNTAX "NET ACCOUNTS [/FORCELOGOFF:{minuty|NO}] [/MINPWLEN:długość]\n\
- [/MAXPWAGE:{dni|UNLIMITED}] [/MINPWAGE:dni]\n\
- [/UNIQUEPW:liczba] [/DOMAIN]\n\n"
- IDS_ACCOUNTS_HELP_1 "NET ACCOUNTS uaktualnia bazę kont użytkowników i zmienia hasło oraz wymagania\n\
-logowania dla wszystkich kont.\n\
-Użyte bez opcji, NET ACCOUNTS wyświetla bieżące ustawienia\n\
-hasła i ograniczeń logowania oraz informacje o domenie.\n\n"
- IDS_ACCOUNTS_HELP_2 "Aby opcje użyte z NET ACCOUNTS odniosły skutek, muszą być\n\
-spełnione dwa warunki.\n\n"
- IDS_ACCOUNTS_HELP_3 "- Wymagania hasła i logowania odnoszą skutek tylko wtedy, gdy\n\
- zostało utworzone konto użytkownika (w tym celu użyj\n\
- Menedżera użytkowników lub polecenia NET USER).\n\n"
- IDS_ACCOUNTS_HELP_4 "- Usługa logowania (Net Logon) musi być uruchomiona na wszystkich\n\
- serwerach w domenie, które weryfikują logowanie. Usługa logowania\n\
- jest uruchamiana automatycznie podczas uruchamiania systemu.\n\n"
- IDS_ACCOUNTS_HELP_5 "/FORECELOGOFF:{minuty | NO} Ustawia liczbę minut, przez które użytkownik\n\
- może być zalogowany przed wymuszeniem wylogowania\n\
- wskutek wygaśnięcia lub ważności godzin logowania.\n\
- NO, wartość domyślna, zapobiega wymuszaniu\n\
- wylogowania.\n"
- IDS_ACCOUNTS_HELP_6 "/MINPWLEN:długość Ustawia minimalną liczbę znaków w haśle.\n\
- Zakres długości hasła wynosi od 0 do 14 znaków;\n\
- wartość domyślna to 6 znaków.\n"
- IDS_ACCOUNTS_HELP_7 "/MAXPWAGE:{dni | UNLIMITED} Ustawia maksymalną liczbę dni ważności\n\
- hasła. UNLIMITED ustala nieograniczony\n\
- czas ważności hasła. Wartość /MAXPWAGE nie\n\
- może być mniejsza od /MINPWAGE. Zakres wynosi\n\
- od 1 do 999; domyślnie wartość się nie zmienia.\n"
- IDS_ACCOUNTS_HELP_8 "/MINPWAGE:dni Ustawia minimalną liczbę dni, które muszą\n\
- minąć, zanim użytkownik może zmienić hasło.\n\
- Wartość 0 ustawia brak tego ograniczenia.\n\
- Zakres wynosi od 0 do 999; wartość domyślna\n\
- to 0 dni. Wartość /MINPWAGE nie może być \n\
- większa od wartości /MAXPWAGE."
- IDS_ACCOUNTS_HELP_9 "/UNIQUEPW:liczba Wymaga, aby hasło użytkownika było unikatowe,\n\
- poprzez określoną liczbę zmian hasła.\n\
- Największa wartość to 24.\n"
- IDS_ACCOUNTS_HELP_10 "/DOMAIN Wykonuje operacje na kontrolerze domeny\n\
- w bieżącej domenie. W innym wypadku,\n\
- operacje te są dokonywane na komputerze\n\
- lokalnym.\n\n"
IDS_COMPUTER_SYNTAX "NET COMPUTER \\nazwa_komputera {/ADD | /DEL}\n\n"
IDS_COMPUTER_HELP_1 "NET COMPUTER dodaje lub usuwa komputer z bazy danych domeny.\n\
To polecenie jest dostępne tylko na serwerowych systemach opoeracyjnych.\n\n"
diff --git a/base/applications/network/net/lang/ro-RO.rc b/base/applications/network/net/lang/ro-RO.rc
index 834eccba53..b5e4f0e38a 100644
--- a/base/applications/network/net/lang/ro-RO.rc
+++ b/base/applications/network/net/lang/ro-RO.rc
@@ -8,44 +8,6 @@ LANGUAGE LANG_ROMANIAN, SUBLANG_NEUTRAL
STRINGTABLE
BEGIN
- IDS_ACCOUNTS_SYNTAX "NET ACCOUNTS [/FORCELOGOFF:{Minute|NO}] [/MINPWLEN:Lungime]\n\
- [/MAXPWAGE:{Zile|UNLIMITED}] [/MINPWAGE:Zile]\n\
- [/UNIQUEPW:Număr] [/DOMAIN]\n\n"
- IDS_ACCOUNTS_HELP_1 "NET ACCOUNTS actualizează baza de utilizatori și modifică parola și\n\
-cerințele de autentificare pentru toate conturile.\n\
-Utilizat fără parametri, NET ACCOUNTS afișează configurația curentă pentru\n\
-parole, limitări de autentificare, și informații de domeniu.\n\n"
- IDS_ACCOUNTS_HELP_2 "Sunt necesare două condiții pentru ca opțiunile utilizate cu\n\
-NET ACCOUNTS să aibă efect.\n\n"
- IDS_ACCOUNTS_HELP_3 "- Cerințele de autentificare și parolele au sens doar când conturile\n\
- sunt instituite (cu Gestionarul de Utilizatori sau comanda NET USER).\n\n"
- IDS_ACCOUNTS_HELP_4 "- Este necesar ca serviciul Net Logon să fie activ în toate servele din\n\
- domeniul de autentificare. Serviciul Net Logon este lansat automat la\n\
- pornirea sistemului de operare.\n\n"
- IDS_ACCOUNTS_HELP_5 "/FORECELOGOFF:{minute | NO} Definește numărul minutelor precursoare unei\n\
- deautentificări forțate la expirarea contului\n\
- sau a numărului valid de ore de autentificare.\n\
- NO (implicit) previne deautentificarea forțată.\n"
- IDS_ACCOUNTS_HELP_6 "/MINPWLEN:length Sets the minimum number of characters for\n\
- a password. The range is 0-14 characters;\n\
- the default is 6 characters.\n"
- IDS_ACCOUNTS_HELP_7 "/MAXPWAGE:{days | UNLIMITED} Sets the maximum numer of days that a\n\
- password is valid. No limit is specified\n\
- by using UNLIMITED. /MAXPWAGE cannot be less\n\
- than /MINPWAGE. The range is 1-999; the\n\
- default is to leave the value unchanged.\n"
- IDS_ACCOUNTS_HELP_8 "/MINPWAGE:days Sets the minimum number of days that must\n\
- pass before a user can change a password.\n\
- A value of 0 sets no minimum time. The range\n\
- is 0-999; the default is 0 days. /MINPWAGE\n\
- cannot be more than /MAXPWAGE.\n"
- IDS_ACCOUNTS_HELP_9 "/UNIQUEPW:number Requires that a users passwords be unique\n\
- through the specified number of password\n\
- changes. The maximum value is 24.\n"
- IDS_ACCOUNTS_HELP_10 "/DOMAIN Performs the operation on a domain\n\
- controller of the current domain. Otherwise,\n\
- the operation is performed on the local\n\
- computer.\n\n"
IDS_COMPUTER_SYNTAX "NET COMPUTER \\computername {/ADD | /DEL}\n\n"
IDS_COMPUTER_HELP_1 "NET COMPUTER adds or deletes computers from a domain database. This\n\
command is available only on server operating systems.\n\n"
diff --git a/base/applications/network/net/lang/ru-RU.rc b/base/applications/network/net/lang/ru-RU.rc
index b9a14f7ed4..8c918e1533 100644
--- a/base/applications/network/net/lang/ru-RU.rc
+++ b/base/applications/network/net/lang/ru-RU.rc
@@ -4,44 +4,6 @@ LANGUAGE LANG_RUSSIAN, SUBLANG_DEFAULT
STRINGTABLE
BEGIN
- IDS_ACCOUNTS_SYNTAX "NET ACCOUNTS [/FORCELOGOFF:{минуты | NO}] [/MINPWLEN:длина]\n\
- [/MAXPWAGE:{дни | UNLIMITED}] [/MINPWAGE:дни]\n\
- [/UNIQUEPW:число] [/DOMAIN]\n\n"
- IDS_ACCOUNTS_HELP_1 "NET ACCOUNTS updates the user accounts database and modifies password\n\
-and logon requirements for all accounts.\n\
-When used without parameters, NET ACCOUNTS displays the current settings for\n\
-passwords, logon limitations, and domain information.\n\n"
- IDS_ACCOUNTS_HELP_2 "Two conditions are required in order for options used with\n\
-NET ACCOUNTS to take effect.\n\n"
- IDS_ACCOUNTS_HELP_3 "- The password and logon requirements are only effective if user\n\
- accounts havebeen set up (user User Manager or the NET USER command).\n\n"
- IDS_ACCOUNTS_HELP_4 "- The Net Logon service must be running on all servers in the domain\n\
- that verify logon. Net Logon is started autmatically when the\n\
- operating system starts.\n\n"
- IDS_ACCOUNTS_HELP_5 "/FORECELOGOFF:{minutes | NO} Sets the number of minutes a user has before\n\
- being forced to log off when the\n\
- account expires or valid logon hours expire.\n\
- NO, the default, prevents forced logoff.\n"
- IDS_ACCOUNTS_HELP_6 "/MINPWLEN:length Sets the minimum number of characters for\n\
- a password. The range is 0-14 characters;\n\
- the default is 6 characters.\n"
- IDS_ACCOUNTS_HELP_7 "/MAXPWAGE:{days | UNLIMITED} Sets the maximum numer of days that a\n\
- password is valid. No limit is specified\n\
- by using UNLIMITED. /MAXPWAGE cannot be less\n\
- than /MINPWAGE. The range is 1-999; the\n\
- default is to leave the value unchanged.\n"
- IDS_ACCOUNTS_HELP_8 "/MINPWAGE:days Sets the minimum number of days that must\n\
- pass before a user can change a password.\n\
- A value of 0 sets no minimum time. The range\n\
- is 0-999; the default is 0 days. /MINPWAGE\n\
- cannot be more than /MAXPWAGE.\n"
- IDS_ACCOUNTS_HELP_9 "/UNIQUEPW:number Requires that a users passwords be unique\n\
- through the specified number of password\n\
- changes. The maximum value is 24.\n"
- IDS_ACCOUNTS_HELP_10 "/DOMAIN Performs the operation on a domain\n\
- controller of the current domain. Otherwise,\n\
- the operation is performed on the local\n\
- computer.\n\n"
IDS_COMPUTER_SYNTAX "NET COMPUTER \\computername {/ADD | /DEL}\n\n"
IDS_COMPUTER_HELP_1 "NET COMPUTER adds or deletes computers from a domain database. This\n\
command is available only on server operating systems.\n\n"
diff --git a/base/applications/network/net/lang/tr-TR.rc b/base/applications/network/net/lang/tr-TR.rc
index 3fb24e39c2..33af6ce5d8 100644
--- a/base/applications/network/net/lang/tr-TR.rc
+++ b/base/applications/network/net/lang/tr-TR.rc
@@ -4,44 +4,6 @@ LANGUAGE LANG_TURKISH, SUBLANG_DEFAULT
STRINGTABLE
BEGIN
- IDS_ACCOUNTS_SYNTAX "NET ACCOUNTS [/FORCELOGOFF:{Dakîka|NO}] [/MINPWLEN:Uzunluk]\n\
- [/MAXPWAGE:{Gün|UNLIMITED}] [/MINPWAGE:Gün]\n\
- [/UNIQUEPW:Sayı] [/DOMAIN]\n\n"
- IDS_ACCOUNTS_HELP_1 "NET ACCOUNTS updates the user accounts database and modifies password\n\
-and logon requirements for all accounts.\n\
-When used without parameters, NET ACCOUNTS displays the current settings for\n\
-passwords, logon limitations, and domain information.\n\n"
- IDS_ACCOUNTS_HELP_2 "Two conditions are required in order for options used with\n\
-NET ACCOUNTS to take effect.\n\n"
- IDS_ACCOUNTS_HELP_3 "- The password and logon requirements are only effective if user\n\
- accounts havebeen set up (user User Manager or the NET USER command).\n\n"
- IDS_ACCOUNTS_HELP_4 "- The Net Logon service must be running on all servers in the domain\n\
- that verify logon. Net Logon is started autmatically when the\n\
- operating system starts.\n\n"
- IDS_ACCOUNTS_HELP_5 "/FORECELOGOFF:{minutes | NO} Sets the number of minutes a user has before\n\
- being forced to log off when the\n\
- account expires or valid logon hours expire.\n\
- NO, the default, prevents forced logoff.\n"
- IDS_ACCOUNTS_HELP_6 "/MINPWLEN:length Sets the minimum number of characters for\n\
- a password. The range is 0-14 characters;\n\
- the default is 6 characters.\n"
- IDS_ACCOUNTS_HELP_7 "/MAXPWAGE:{days | UNLIMITED} Sets the maximum numer of days that a\n\
- password is valid. No limit is specified\n\
- by using UNLIMITED. /MAXPWAGE cannot be less\n\
- than /MINPWAGE. The range is 1-999; the\n\
- default is to leave the value unchanged.\n"
- IDS_ACCOUNTS_HELP_8 "/MINPWAGE:days Sets the minimum number of days that must\n\
- pass before a user can change a password.\n\
- A value of 0 sets no minimum time. The range\n\
- is 0-999; the default is 0 days. /MINPWAGE\n\
- cannot be more than /MAXPWAGE.\n"
- IDS_ACCOUNTS_HELP_9 "/UNIQUEPW:number Requires that a users passwords be unique\n\
- through the specified number of password\n\
- changes. The maximum value is 24.\n"
- IDS_ACCOUNTS_HELP_10 "/DOMAIN Performs the operation on a domain\n\
- controller of the current domain. Otherwise,\n\
- the operation is performed on the local\n\
- computer.\n\n"
IDS_COMPUTER_SYNTAX "NET COMPUTER \\computername {/ADD | /DEL}\n\n"
IDS_COMPUTER_HELP_1 "NET COMPUTER adds or deletes computers from a domain database. This\n\
command is available only on server operating systems.\n\n"
diff --git a/base/applications/network/net/lang/zh-CN.rc b/base/applications/network/net/lang/zh-CN.rc
index b643c14d1a..91c346030e 100644
--- a/base/applications/network/net/lang/zh-CN.rc
+++ b/base/applications/network/net/lang/zh-CN.rc
@@ -4,44 +4,6 @@ LANGUAGE LANG_CHINESE, SUBLANG_CHINESE_SIMPLIFIED
STRINGTABLE
BEGIN
- IDS_ACCOUNTS_SYNTAX "NET ACCOUNTS [/FORCELOGOFF:{Minutes|NO}] [/MINPWLEN:Length]\n\
- [/MAXPWAGE:{Days|UNLIMITED}] [/MINPWAGE:Days]\n\
- [/UNIQUEPW:Count] [/DOMAIN]\n\n"
- IDS_ACCOUNTS_HELP_1 "NET ACCOUNTS updates the user accounts database and modifies password\n\
-and logon requirements for all accounts.\n\
-When used without parameters, NET ACCOUNTS displays the current settings for\n\
-passwords, logon limitations, and domain information.\n\n"
- IDS_ACCOUNTS_HELP_2 "Two conditions are required in order for options used with\n\
-NET ACCOUNTS to take effect.\n\n"
- IDS_ACCOUNTS_HELP_3 "- The password and logon requirements are only effective if user\n\
- accounts havebeen set up (user User Manager or the NET USER command).\n\n"
- IDS_ACCOUNTS_HELP_4 "- The Net Logon service must be running on all servers in the domain\n\
- that verify logon. Net Logon is started autmatically when the\n\
- operating system starts.\n\n"
- IDS_ACCOUNTS_HELP_5 "/FORECELOGOFF:{minutes | NO} Sets the number of minutes a user has before\n\
- being forced to log off when the\n\
- account expires or valid logon hours expire.\n\
- NO, the default, prevents forced logoff.\n"
- IDS_ACCOUNTS_HELP_6 "/MINPWLEN:length Sets the minimum number of characters for\n\
- a password. The range is 0-14 characters;\n\
- the default is 6 characters.\n"
- IDS_ACCOUNTS_HELP_7 "/MAXPWAGE:{days | UNLIMITED} Sets the maximum numer of days that a\n\
- password is valid. No limit is specified\n\
- by using UNLIMITED. /MAXPWAGE cannot be less\n\
- than /MINPWAGE. The range is 1-999; the\n\
- default is to leave the value unchanged.\n"
- IDS_ACCOUNTS_HELP_8 "/MINPWAGE:days Sets the minimum number of days that must\n\
- pass before a user can change a password.\n\
- A value of 0 sets no minimum time. The range\n\
- is 0-999; the default is 0 days. /MINPWAGE\n\
- cannot be more than /MAXPWAGE.\n"
- IDS_ACCOUNTS_HELP_9 "/UNIQUEPW:number Requires that a users passwords be unique\n\
- through the specified number of password\n\
- changes. The maximum value is 24.\n"
- IDS_ACCOUNTS_HELP_10 "/DOMAIN Performs the operation on a domain\n\
- controller of the current domain. Otherwise,\n\
- the operation is performed on the local\n\
- computer.\n\n"
IDS_COMPUTER_SYNTAX "NET COMPUTER \\computername {/ADD | /DEL}\n\n"
IDS_COMPUTER_HELP_1 "NET COMPUTER adds or deletes computers from a domain database. This\n\
command is available only on server operating systems.\n\n"
diff --git a/base/applications/network/net/lang/zh-TW.rc b/base/applications/network/net/lang/zh-TW.rc
index 1673f953ae..45d5fe804d 100644
--- a/base/applications/network/net/lang/zh-TW.rc
+++ b/base/applications/network/net/lang/zh-TW.rc
@@ -4,44 +4,6 @@ LANGUAGE LANG_CHINESE, SUBLANG_CHINESE_TRADITIONAL
STRINGTABLE
BEGIN
- IDS_ACCOUNTS_SYNTAX "NET ACCOUNTS [/FORCELOGOFF:{分鐘|NO}] [/MINPWLEN:長度]\n\
- [/MAXPWAGE:{天|UNLIMITED}] [/MINPWAGE:天]\n\
- [/UNIQUEPW:計數] [/DOMAIN]\n\n"
- IDS_ACCOUNTS_HELP_1 "NET ACCOUNTS updates the user accounts database and modifies password\n\
-and logon requirements for all accounts.\n\
-When used without parameters, NET ACCOUNTS displays the current settings for\n\
-passwords, logon limitations, and domain information.\n\n"
- IDS_ACCOUNTS_HELP_2 "Two conditions are required in order for options used with\n\
-NET ACCOUNTS to take effect.\n\n"
- IDS_ACCOUNTS_HELP_3 "- The password and logon requirements are only effective if user\n\
- accounts havebeen set up (user User Manager or the NET USER command).\n\n"
- IDS_ACCOUNTS_HELP_4 "- The Net Logon service must be running on all servers in the domain\n\
- that verify logon. Net Logon is started autmatically when the\n\
- operating system starts.\n\n"
- IDS_ACCOUNTS_HELP_5 "/FORECELOGOFF:{minutes | NO} Sets the number of minutes a user has before\n\
- being forced to log off when the\n\
- account expires or valid logon hours expire.\n\
- NO, the default, prevents forced logoff.\n"
- IDS_ACCOUNTS_HELP_6 "/MINPWLEN:length Sets the minimum number of characters for\n\
- a password. The range is 0-14 characters;\n\
- the default is 6 characters.\n"
- IDS_ACCOUNTS_HELP_7 "/MAXPWAGE:{days | UNLIMITED} Sets the maximum numer of days that a\n\
- password is valid. No limit is specified\n\
- by using UNLIMITED. /MAXPWAGE cannot be less\n\
- than /MINPWAGE. The range is 1-999; the\n\
- default is to leave the value unchanged.\n"
- IDS_ACCOUNTS_HELP_8 "/MINPWAGE:days Sets the minimum number of days that must\n\
- pass before a user can change a password.\n\
- A value of 0 sets no minimum time. The range\n\
- is 0-999; the default is 0 days. /MINPWAGE\n\
- cannot be more than /MAXPWAGE.\n"
- IDS_ACCOUNTS_HELP_9 "/UNIQUEPW:number Requires that a users passwords be unique\n\
- through the specified number of password\n\
- changes. The maximum value is 24.\n"
- IDS_ACCOUNTS_HELP_10 "/DOMAIN Performs the operation on a domain\n\
- controller of the current domain. Otherwise,\n\
- the operation is performed on the local\n\
- computer.\n\n"
IDS_COMPUTER_SYNTAX "NET COMPUTER \\computername {/ADD | /DEL}\n\n"
IDS_COMPUTER_HELP_1 "NET COMPUTER adds or deletes computers from a domain database. This\n\
command is available only on server operating systems.\n\n"
diff --git a/base/applications/network/net/main.c b/base/applications/network/net/main.c
index 34637202c7..883ee2ef2b 100644
--- a/base/applications/network/net/main.c
+++ b/base/applications/network/net/main.c
@@ -145,6 +145,30 @@ PrintErrorMessage(
}
+VOID
+PrintNetMessage(
+ DWORD dwMessage)
+{
+ PWSTR pBuffer;
+
+ FormatMessageW(FORMAT_MESSAGE_ALLOCATE_BUFFER |
+ FORMAT_MESSAGE_FROM_HMODULE |
+ FORMAT_MESSAGE_IGNORE_INSERTS,
+ GetModuleHandleW(NULL),
+ dwMessage,
+ LANG_USER_DEFAULT,
+ (LPWSTR)&pBuffer,
+ 0,
+ NULL);
+ if (pBuffer)
+ {
+ ConPrintf(StdOut, L"%s\n", pBuffer);
+ LocalFree(pBuffer);
+ pBuffer = NULL;
+ }
+}
+
+
VOID
ReadFromConsole(
LPWSTR lpInput,
diff --git a/base/applications/network/net/net.h b/base/applications/network/net/net.h
index 4e2f4a1518..de61f92f39 100644
--- a/base/applications/network/net/net.h
+++ b/base/applications/network/net/net.h
@@ -24,6 +24,7 @@
#include <conutils.h>
+#include <net_msg.h>
#include "resource.h"
extern HMODULE hModuleNetMsg;
@@ -42,6 +43,10 @@ VOID
PrintErrorMessage(
DWORD dwError);
+VOID
+PrintNetMessage(
+ DWORD dwMessage);
+
VOID
ReadFromConsole(
LPWSTR lpInput,
diff --git a/base/applications/network/net/net.rc b/base/applications/network/net/net.rc
index 78bed3dc1c..7fda9f27ee 100644
--- a/base/applications/network/net/net.rc
+++ b/base/applications/network/net/net.rc
@@ -9,6 +9,8 @@ LANGUAGE LANG_NEUTRAL, SUBLANG_NEUTRAL
#define REACTOS_STR_ORIGINAL_FILENAME "net.exe"
#include <reactos/version.rc>
+#include <net_msg.rc>
+
/* UTF-8 */
#pragma code_page(65001)
diff --git a/base/applications/network/net/resource.h b/base/applications/network/net/resource.h
index 84d5f878a7..71bbd8e2db 100644
--- a/base/applications/network/net/resource.h
+++ b/base/applications/network/net/resource.h
@@ -1,16 +1,5 @@
#pragma once
-#define IDS_ACCOUNTS_SYNTAX 100
-#define IDS_ACCOUNTS_HELP_1 101
-#define IDS_ACCOUNTS_HELP_2 102
-#define IDS_ACCOUNTS_HELP_3 103
-#define IDS_ACCOUNTS_HELP_4 104
-#define IDS_ACCOUNTS_HELP_5 105
-#define IDS_ACCOUNTS_HELP_6 106
-#define IDS_ACCOUNTS_HELP_7 107
-#define IDS_ACCOUNTS_HELP_8 108
-#define IDS_ACCOUNTS_HELP_9 109
-#define IDS_ACCOUNTS_HELP_10 110
#define IDS_COMPUTER_SYNTAX 111
#define IDS_COMPUTER_HELP_1 112
#define IDS_COMPUTER_HELP_2 113
diff --git a/sdk/include/reactos/mc/CMakeLists.txt b/sdk/include/reactos/mc/CMakeLists.txt
index 56e501f41a..46753f3bc1 100644
--- a/sdk/include/reactos/mc/CMakeLists.txt
+++ b/sdk/include/reactos/mc/CMakeLists.txt
@@ -4,6 +4,7 @@ list(APPEND ANSI_SOURCE
list(APPEND UNICODE_SOURCE
errcodes.mc
+ net_msg.mc
neteventmsg.mc
netmsgmsg.mc
ntiologc.mc
diff --git a/sdk/include/reactos/mc/net_msg.mc b/sdk/include/reactos/mc/net_msg.mc
new file mode 100644
index 0000000000..a65776ce6a
--- /dev/null
+++ b/sdk/include/reactos/mc/net_msg.mc
@@ -0,0 +1,403 @@
+MessageIdTypedef=DWORD
+
+SeverityNames=(Success=0x0:STATUS_SEVERITY_SUCCESS
+ Informational=0x1:STATUS_SEVERITY_INFORMATIONAL
+ Warning=0x2:STATUS_SEVERITY_WARNING
+ Error=0x3:STATUS_SEVERITY_ERROR
+ )
+
+FacilityNames=(System=0x0:FACILITY_SYSTEM
+ )
+
+LanguageNames=(English=0x409:MSG00409
+ Polish=0x415:MSG00415
+ Romanian=0x018:MSG00018
+ Russian=0x419:MSG00419
+ Spanish=0x00A:MSG0000A
+ Turkish=0x41F:MSG0041F
+ Chinese=0x804:MSG00804
+ Taiwanese=0x404:MSG00404
+ )
+
+
+MessageId=10000
+SymbolicName=MSG_ACCOUNTS_SYNTAX
+Severity=Success
+Facility=System
+Language=English
+NET ACCOUNTS [/FORCELOGOFF:{Minutes|NO}] [/MINPWLEN:Length]
+ [/MAXPWAGE:{Days|UNLIMITED}] [/MINPWAGE:Days]
+ [/UNIQUEPW:Count] [/DOMAIN]
+.
+Language=Polish
+NET ACCOUNTS [/FORCELOGOFF:{minuty|NO}] [/MINPWLEN:długość]
+ [/MAXPWAGE:{dni|UNLIMITED}] [/MINPWAGE:dni]
+ [/UNIQUEPW:liczba] [/DOMAIN]
+.
+Language=Romanian
+NET ACCOUNTS [/FORCELOGOFF:{Minute|NO}] [/MINPWLEN:Lungime]
+ [/MAXPWAGE:{Zile|UNLIMITED}] [/MINPWAGE:Zile]
+ [/UNIQUEPW:Număr] [/DOMAIN]
+.
+Language=Russian
+NET ACCOUNTS [/FORCELOGOFF:{минуты | NO}] [/MINPWLEN:длина]
+ [/MAXPWAGE:{дни | UNLIMITED}] [/MINPWAGE:дни]
+ [/UNIQUEPW:число] [/DOMAIN]
+.
+Language=Spanish
+NET ACCOUNTS [/FORCELOGOFF:{minutos | NO}] [/MINPWLEN:longitud]
+ [/MAXPWAGE:{días | UNLIMITED}] [/MINPWAGE:días]
+ [/UNIQUEPW:número] [/DOMAIN]
+.
+Language=Turkish
+NET ACCOUNTS [/FORCELOGOFF:{Dakîka|NO}] [/MINPWLEN:Uzunluk]
+ [/MAXPWAGE:{Gün|UNLIMITED}] [/MINPWAGE:Gün]
+ [/UNIQUEPW:Sayı] [/DOMAIN]
+.
+Language=Chinese
+NET ACCOUNTS [/FORCELOGOFF:{Minutes|NO}] [/MINPWLEN:Length]
+ [/MAXPWAGE:{Days|UNLIMITED}] [/MINPWAGE:Days]
+ [/UNIQUEPW:Count] [/DOMAIN]
+.
+Language=Taiwanese
+NET ACCOUNTS [/FORCELOGOFF:{分鐘|NO}] [/MINPWLEN:長度]
+ [/MAXPWAGE:{天|UNLIMITED}] [/MINPWAGE:天]
+ [/UNIQUEPW:計數] [/DOMAIN]
+.
+
+
+MessageId=10001
+SymbolicName=MSG_ACCOUNTS_HELP
+Severity=Success
+Facility=System
+Language=English
+NET ACCOUNTS updates the user accounts database and modifies password
+and logon requirements for all accounts.
+When used without parameters, NET ACCOUNTS displays the current settings for
+passwords, logon limitations, and domain information.
+
+Two conditions are required in order for options used with
+NET ACCOUNTS to take effect.
+
+- The password and logon requirements are only effective if user
+ accounts have been set up (user User Manager or the NET USER command).
+
+- The Net Logon service must be running on all servers in the domain
+ that verify logon. Net Logon is started automatically when the
+ operating system starts.
+
+/FORECELOGOFF:{minutes | NO} Sets the number of minutes a user has before
+ being forced to log off when the
+ account expires or valid logon hours expire.
+ NO, the default, prevents forced logoff.
+/MINPWLEN:length Sets the minimum number of characters for
+ a password. The range is 0-14 characters;
+ the default is 6 characters.
+/MAXPWAGE:{days | UNLIMITED} Sets the maximum numer of days that a
+ password is valid. No limit is specified
+ by using UNLIMITED. /MAXPWAGE cannot be less
+ than /MINPWAGE. The range is 1-999; the
+ default is to leave the value unchanged.
+/MINPWAGE:days Sets the minimum number of days that must
+ pass before a user can change a password.
+ A value of 0 sets no minimum time. The range
+ is 0-999; the default is 0 days. /MINPWAGE
+ cannot be more than /MAXPWAGE.
+/UNIQUEPW:number Requires that a users passwords be unique
+ through the specified number of password
+ changes. The maximum value is 24.
+/DOMAIN Performs the operation on a domain
+ controller of the current domain. Otherwise,
+ the operation is performed on the local
+ computer.
+.
+Language=Polish
+NET ACCOUNTS uaktualnia bazę kont użytkowników i zmienia hasło oraz wymagania
+logowania dla wszystkich kont.
+Użyte bez opcji, NET ACCOUNTS wyświetla bieżące ustawienia
+hasła i ograniczeń logowania oraz informacje o domenie.
+
+Aby opcje użyte z NET ACCOUNTS odniosły skutek, muszą być
+spełnione dwa warunki.
+
+- Wymagania hasła i logowania odnoszą skutek tylko wtedy, gdy
+ zostało utworzone konto użytkownika (w tym celu użyj
+ Menedżera użytkowników lub polecenia NET USER).
+
+- Usługa logowania (Net Logon) musi być uruchomiona na wszystkich
+ serwerach w domenie, które weryfikują logowanie. Usługa logowania
+ jest uruchamiana automatycznie podczas uruchamiania systemu.
+
+/FORECELOGOFF:{minuty | NO} Ustawia liczbę minut, przez które użytkownik
+ może być zalogowany przed wymuszeniem wylogowania
+ wskutek wygaśnięcia lub ważności godzin logowania.
+ NO, wartość domyślna, zapobiega wymuszaniu
+ wylogowania.
+/MINPWLEN:długość Ustawia minimalną liczbę znaków w haśle.
+ Zakres długości hasła wynosi od 0 do 14 znaków;
+ wartość domyślna to 6 znaków.
+/MAXPWAGE:{dni | UNLIMITED} Ustawia maksymalną liczbę dni ważności
+ hasła. UNLIMITED ustala nieograniczony
+ czas ważności hasła. Wartość /MAXPWAGE nie
+ może być mniejsza od /MINPWAGE. Zakres wynosi
+ od 1 do 999; domyślnie wartość się nie zmienia.
+/MINPWAGE:dni Ustawia minimalną liczbę dni, które muszą
+ minąć, zanim użytkownik może zmienić hasło.
+ Wartość 0 ustawia brak tego ograniczenia.
+ Zakres wynosi od 0 do 999; wartość domyślna
+ to 0 dni. Wartość /MINPWAGE nie może być
+ większa od wartości /MAXPWAGE.
+/UNIQUEPW:liczba Wymaga, aby hasło użytkownika było unikatowe,
+ poprzez określoną liczbę zmian hasła.
+ Największa wartość to 24.
+/DOMAIN Wykonuje operacje na kontrolerze domeny
+ w bieżącej domenie. W innym wypadku,
+ operacje te są dokonywane na komputerze
+ lokalnym.
+.
+Language=Romanian
+NET ACCOUNTS actualizează baza de utilizatori și modifică parola și
+cerințele de autentificare pentru toate conturile.
+Utilizat fără parametri, NET ACCOUNTS afișează configurația curentă pentru
+parole, limitări de autentificare, și informații de domeniu.
+
+Sunt necesare două condiții pentru ca opțiunile utilizate cu
+NET ACCOUNTS să aibă efect.
+
+- Cerințele de autentificare și parolele au sens doar când conturile
+ sunt instituite (cu Gestionarul de Utilizatori sau comanda NET USER).
+
+- Este necesar ca serviciul Net Logon să fie activ în toate servele din
+ domeniul de autentificare. Serviciul Net Logon este lansat automat la
+ pornirea sistemului de operare.
+
+/FORECELOGOFF:{minute | NO} Definește numărul minutelor precursoare unei
+ deautentificări forțate la expirarea contului
+ sau a numărului valid de ore de autentificare.
+ NO (implicit) previne deautentificarea forțată.
+/MINPWLEN:length Sets the minimum number of characters for
+ a password. The range is 0-14 characters;
+ the default is 6 characters.
+/MAXPWAGE:{days | UNLIMITED} Sets the maximum numer of days that a
+ password is valid. No limit is specified
+ by using UNLIMITED. /MAXPWAGE cannot be less
+ than /MINPWAGE. The range is 1-999; the
+ default is to leave the value unchanged.
+/MINPWAGE:days Sets the minimum number of days that must
+ pass before a user can change a password.
+ A value of 0 sets no minimum time. The range
+ is 0-999; the default is 0 days. /MINPWAGE
+ cannot be more than /MAXPWAGE.
+/UNIQUEPW:number Requires that a users passwords be unique
+ through the specified number of password
+ changes. The maximum value is 24.
+/DOMAIN Performs the operation on a domain
+ controller of the current domain. Otherwise,
+ the operation is performed on the local
+ computer.
+.
+Language=Russian
+NET ACCOUNTS updates the user accounts database and modifies password
+and logon requirements for all accounts.
+When used without parameters, NET ACCOUNTS displays the current settings for
+passwords, logon limitations, and domain information.
+
+Two conditions are required in order for options used with
+NET ACCOUNTS to take effect.
+
+- The password and logon requirements are only effective if user
+ accounts havebeen set up (user User Manager or the NET USER command).
+
+- The Net Logon service must be running on all servers in the domain
+ that verify logon. Net Logon is started autmatically when the
+ operating system starts.
+
+/FORECELOGOFF:{minutes | NO} Sets the number of minutes a user has before
+ being forced to log off when the
+ account expires or valid logon hours expire.
+ NO, the default, prevents forced logoff.
+/MINPWLEN:length Sets the minimum number of characters for
+ a password. The range is 0-14 characters;
+ the default is 6 characters.
+/MAXPWAGE:{days | UNLIMITED} Sets the maximum numer of days that a
+ password is valid. No limit is specified
+ by using UNLIMITED. /MAXPWAGE cannot be less
+ than /MINPWAGE. The range is 1-999; the
+ default is to leave the value unchanged.
+/MINPWAGE:days Sets the minimum number of days that must
+ pass before a user can change a password.
+ A value of 0 sets no minimum time. The range
+ is 0-999; the default is 0 days. /MINPWAGE
+ cannot be more than /MAXPWAGE.
+/UNIQUEPW:number Requires that a users passwords be unique
+ through the specified number of password
+ changes. The maximum value is 24.
+/DOMAIN Performs the operation on a domain
+ controller of the current domain. Otherwise,
+ the operation is performed on the local
+ computer.
+.
+Language=Spanish
+NET ACCOUNTS updates the user accounts database and modifies password
+and logon requirements for all accounts.
+When used without parameters, NET ACCOUNTS displays the current settings for
+passwords, logon limitations, and domain information.
+
+Two conditions are required in order for options used with
+NET ACCOUNTS to take effect.
+
+- The password and logon requirements are only effective if user
+ accounts have been set up (user User Manager or the NET USER command).
+
+- The Net Logon service must be running on all servers in the domain
+ that verify logon. Net Logon is started automatically when the
+ operating system starts.
+
+/FORECELOGOFF:{minutes | NO} Sets the number of minutes a user has before
+ being forced to log off when the
+ account expires or valid logon hours expire.
+ NO, the default, prevents forced logoff.
+/MINPWLEN:length Sets the minimum number of characters for
+ a password. The range is 0-14 characters;
+ the default is 6 characters.
+/MAXPWAGE:{days | UNLIMITED} Sets the maximum numer of days that a
+ password is valid. No limit is specified
+ by using UNLIMITED. /MAXPWAGE cannot be less
+ than /MINPWAGE. The range is 1-999; the
+ default is to leave the value unchanged.
+/MINPWAGE:days Sets the minimum number of days that must
+ pass before a user can change a password.
+ A value of 0 sets no minimum time. The range
+ is 0-999; the default is 0 days. /MINPWAGE
+ cannot be more than /MAXPWAGE.
+/UNIQUEPW:number Requires that a users passwords be unique
+ through the specified number of password
+ changes. The maximum value is 24.
+/DOMAIN Performs the operation on a domain
+ controller of the current domain. Otherwise,
+ the operation is performed on the local
+ computer.
+.
+Language=Turkish
+NET ACCOUNTS updates the user accounts database and modifies password
+and logon requirements for all accounts.
+When used without parameters, NET ACCOUNTS displays the current settings for
+passwords, logon limitations, and domain information.
+
+Two conditions are required in order for options used with
+NET ACCOUNTS to take effect.
+
+- The password and logon requirements are only effective if user
+ accounts havebeen set up (user User Manager or the NET USER command).
+
+- The Net Logon service must be running on all servers in the domain
+ that verify logon. Net Logon is started autmatically when the
+ operating system starts.
+
+/FORECELOGOFF:{minutes | NO} Sets the number of minutes a user has before
+ being forced to log off when the
+ account expires or valid logon hours expire.
+ NO, the default, prevents forced logoff.
+/MINPWLEN:length Sets the minimum number of characters for
+ a password. The range is 0-14 characters;
+ the default is 6 characters.
+/MAXPWAGE:{days | UNLIMITED} Sets the maximum numer of days that a
+ password is valid. No limit is specified
+ by using UNLIMITED. /MAXPWAGE cannot be less
+ than /MINPWAGE. The range is 1-999; the
+ default is to leave the value unchanged.
+/MINPWAGE:days Sets the minimum number of days that must
+ pass before a user can change a password.
+ A value of 0 sets no minimum time. The range
+ is 0-999; the default is 0 days. /MINPWAGE
+ cannot be more than /MAXPWAGE.
+/UNIQUEPW:number Requires that a users passwords be unique
+ through the specified number of password
+ changes. The maximum value is 24.
+/DOMAIN Performs the operation on a domain
+ controller of the current domain. Otherwise,
+ the operation is performed on the local
+ computer.
+.
+Language=Chinese
+NET ACCOUNTS updates the user accounts database and modifies password
+and logon requirements for all accounts.
+When used without parameters, NET ACCOUNTS displays the current settings for
+passwords, logon limitations, and domain information.
+
+Two conditions are required in order for options used with
+NET ACCOUNTS to take effect.
+
+- The password and logon requirements are only effective if user
+ accounts havebeen set up (user User Manager or the NET USER command).
+
+- The Net Logon service must be running on all servers in the domain
+ that verify logon. Net Logon is started autmatically when the
+ operating system starts.
+
+/FORECELOGOFF:{minutes | NO} Sets the number of minutes a user has before
+ being forced to log off when the
+ account expires or valid logon hours expire.
+ NO, the default, prevents forced logoff.
+/MINPWLEN:length Sets the minimum number of characters for
+ a password. The range is 0-14 characters;
+ the default is 6 characters.
+/MAXPWAGE:{days | UNLIMITED} Sets the maximum numer of days that a
+ password is valid. No limit is specified
+ by using UNLIMITED. /MAXPWAGE cannot be less
+ than /MINPWAGE. The range is 1-999; the
+ default is to leave the value unchanged.
+/MINPWAGE:days Sets the minimum number of days that must
+ pass before a user can change a password.
+ A value of 0 sets no minimum time. The range
+ is 0-999; the default is 0 days. /MINPWAGE
+ cannot be more than /MAXPWAGE.
+/UNIQUEPW:number Requires that a users passwords be unique
+ through the specified number of password
+ changes. The maximum value is 24.
+/DOMAIN Performs the operation on a domain
+ controller of the current domain. Otherwise,
+ the operation is performed on the local
+ computer.
+.
+Language=Taiwanese
+NET ACCOUNTS updates the user accounts database and modifies password
+and logon requirements for all accounts.
+When used without parameters, NET ACCOUNTS displays the current settings for
+passwords, logon limitations, and domain information.
+
+Two conditions are required in order for options used with
+NET ACCOUNTS to take effect.
+
+- The password and logon requirements are only effective if user
+ accounts havebeen set up (user User Manager or the NET USER command).
+
+- The Net Logon service must be running on all servers in the domain
+ that verify logon. Net Logon is started autmatically when the
+ operating system starts.
+
+/FORECELOGOFF:{minutes | NO} Sets the number of minutes a user has before
+ being forced to log off when the
+ account expires or valid logon hours expire.
+ NO, the default, prevents forced logoff.
+/MINPWLEN:length Sets the minimum number of characters for
+ a password. The range is 0-14 characters;
+ the default is 6 characters.
+/MAXPWAGE:{days | UNLIMITED} Sets the maximum numer of days that a
+ password is valid. No limit is specified
+ by using UNLIMITED. /MAXPWAGE cannot be less
+ than /MINPWAGE. The range is 1-999; the
+ default is to leave the value unchanged.
+/MINPWAGE:days Sets the minimum number of days that must
+ pass before a user can change a password.
+ A value of 0 sets no minimum time. The range
+ is 0-999; the default is 0 days. /MINPWAGE
+ cannot be more than /MAXPWAGE.
+/UNIQUEPW:number Requires that a users passwords be unique
+ through the specified number of password
+ changes. The maximum value is 24.
+/DOMAIN Performs the operation on a domain
+ controller of the current domain. Otherwise,
+ the operation is performed on the local
+ computer.
+.
https://git.reactos.org/?p=reactos.git;a=commitdiff;h=9e18da43fe4b170172fc0…
commit 9e18da43fe4b170172fc08c89264cf69cf59cd30
Author: Hermès Bélusca-Maïto <hermes.belusca-maito(a)reactos.org>
AuthorDate: Sun Dec 23 14:02:16 2018 +0100
Commit: Hermès Bélusca-Maïto <hermes.belusca-maito(a)reactos.org>
CommitDate: Sun Dec 23 14:09:16 2018 +0100
[UMPNPMGR] Minor formatting, and enable a DPRINT1 in case NtGetPlugPlayEvent() fails and the PnpEventThread() thread unexpectedly terminates due to that.
---
base/services/umpnpmgr/umpnpmgr.c | 10 +++++-----
1 file changed, 5 insertions(+), 5 deletions(-)
diff --git a/base/services/umpnpmgr/umpnpmgr.c b/base/services/umpnpmgr/umpnpmgr.c
index e1b0e1f276..e7e86e760a 100644
--- a/base/services/umpnpmgr/umpnpmgr.c
+++ b/base/services/umpnpmgr/umpnpmgr.c
@@ -3502,10 +3502,10 @@ PnpEventThread(LPVOID lpParameter)
{
DPRINT("Calling NtGetPlugPlayEvent()\n");
- /* Wait for the next pnp event */
+ /* Wait for the next PnP event */
Status = NtGetPlugPlayEvent(0, 0, PnpEvent, PnpEventSize);
- /* Resize the buffer for the PnP event if it's too small. */
+ /* Resize the buffer for the PnP event if it's too small */
if (Status == STATUS_BUFFER_TOO_SMALL)
{
PnpEventSize += 0x400;
@@ -3518,11 +3518,11 @@ PnpEventThread(LPVOID lpParameter)
if (!NT_SUCCESS(Status))
{
- DPRINT("NtGetPlugPlayEvent() failed (Status %lx)\n", Status);
+ DPRINT1("NtGetPlugPlayEvent() failed (Status 0x%08lx)\n", Status);
break;
}
- /* Process the pnp event */
+ /* Process the PnP event */
DPRINT("Received PnP Event\n");
if (UuidEqual(&PnpEvent->EventGuid, (UUID*)&GUID_DEVICE_ENUMERATED, &RpcStatus))
{
@@ -3613,7 +3613,7 @@ PnpEventThread(LPVOID lpParameter)
PnpEvent->EventGuid.Data4[6], PnpEvent->EventGuid.Data4[7]);
}
- /* Dequeue the current pnp event and signal the next one */
+ /* Dequeue the current PnP event and signal the next one */
NtPlugPlayControl(PlugPlayControlUserResponse, NULL, 0);
}
https://git.reactos.org/?p=reactos.git;a=commitdiff;h=0917c64812c6ed182c8f7…
commit 0917c64812c6ed182c8f771309dfc628127eee2d
Author: Pierre Schweitzer <pierre(a)reactos.org>
AuthorDate: Sun Dec 23 11:08:01 2018 +0100
Commit: Pierre Schweitzer <pierre(a)reactos.org>
CommitDate: Sun Dec 23 11:19:14 2018 +0100
[NTOSKRNL] When growing a file, invalid the last VACB so that it can be refreshed
This will avoid corruption when a file size is little grown and read afterwards.
Up to now, FSD where reading 0es instead of expected data, causing corruption.
This fixes MS FastFAT not being able to mount a FAT volume in ReactOS, corrupting
the FAT.
This also fixes the CcSetFileSizes kmtest tests.
This is based on a patch by Thomas Faber.
CORE-11819
---
ntoskrnl/cc/fs.c | 37 +++++++++++++++++++++++++++++++++++++
1 file changed, 37 insertions(+)
diff --git a/ntoskrnl/cc/fs.c b/ntoskrnl/cc/fs.c
index e31a17b87b..5798f56a91 100644
--- a/ntoskrnl/cc/fs.c
+++ b/ntoskrnl/cc/fs.c
@@ -301,6 +301,43 @@ CcSetFileSizes (
0,
FALSE);
}
+ else
+ {
+ PROS_VACB LastVacb;
+
+ /*
+ * If file (allocation) size has increased, then we need to check whether
+ * it just grows in a single VACB (the last one).
+ * If so, we must mark the VACB as invalid to trigger a read to the
+ * FSD at the next VACB usage, and thus avoid returning garbage
+ */
+
+ /* Check for allocation size and the last VACB */
+ if (SharedCacheMap->SectionSize.QuadPart < FileSizes->AllocationSize.QuadPart &&
+ SharedCacheMap->SectionSize.QuadPart % VACB_MAPPING_GRANULARITY)
+ {
+ LastVacb = CcRosLookupVacb(SharedCacheMap,
+ SharedCacheMap->SectionSize.QuadPart);
+ if (LastVacb != NULL)
+ {
+ /* Mark it as invalid */
+ CcRosReleaseVacb(SharedCacheMap, LastVacb, LastVacb->Dirty ? LastVacb->Valid : FALSE, FALSE, FALSE);
+ }
+ }
+
+ /* Check for file size and the last VACB */
+ if (SharedCacheMap->FileSize.QuadPart < FileSizes->FileSize.QuadPart &&
+ SharedCacheMap->FileSize.QuadPart % VACB_MAPPING_GRANULARITY)
+ {
+ LastVacb = CcRosLookupVacb(SharedCacheMap,
+ SharedCacheMap->FileSize.QuadPart);
+ if (LastVacb != NULL)
+ {
+ /* Mark it as invalid */
+ CcRosReleaseVacb(SharedCacheMap, LastVacb, LastVacb->Dirty ? LastVacb->Valid : FALSE, FALSE, FALSE);
+ }
+ }
+ }
KeAcquireSpinLock(&SharedCacheMap->CacheMapLock, &oldirql);
SharedCacheMap->SectionSize = FileSizes->AllocationSize;