From 4b53972724138186de610dca809e552c598a3fdb Mon Sep 17 00:00:00 2001 From: Eric Kohl Date: Sat, 26 Jul 2025 12:35:40 +0200 Subject: [PATCH] [IPCONFIG] Print an error message on unrecognized or incomplete command line --- base/applications/network/ipconfig/ipconfig.c | 17 +++++++++-------- .../applications/network/ipconfig/lang/bg-BG.rc | 1 + .../applications/network/ipconfig/lang/de-DE.rc | 1 + .../applications/network/ipconfig/lang/el-GR.rc | 1 + .../applications/network/ipconfig/lang/en-US.rc | 1 + .../applications/network/ipconfig/lang/es-ES.rc | 1 + .../applications/network/ipconfig/lang/fr-FR.rc | 1 + .../applications/network/ipconfig/lang/id-ID.rc | 1 + .../applications/network/ipconfig/lang/it-IT.rc | 1 + .../applications/network/ipconfig/lang/ja-JP.rc | 1 + .../applications/network/ipconfig/lang/no-NO.rc | 1 + .../applications/network/ipconfig/lang/pl-PL.rc | 1 + .../applications/network/ipconfig/lang/ro-RO.rc | 1 + .../applications/network/ipconfig/lang/ru-RU.rc | 1 + .../applications/network/ipconfig/lang/sk-SK.rc | 1 + .../applications/network/ipconfig/lang/sq-AL.rc | 1 + .../applications/network/ipconfig/lang/sv-SE.rc | 1 + .../applications/network/ipconfig/lang/tr-TR.rc | 1 + .../applications/network/ipconfig/lang/uk-UA.rc | 1 + .../applications/network/ipconfig/lang/zh-CN.rc | 1 + .../applications/network/ipconfig/lang/zh-TW.rc | 1 + base/applications/network/ipconfig/resource.h | 1 + 22 files changed, 30 insertions(+), 8 deletions(-) diff --git a/base/applications/network/ipconfig/ipconfig.c b/base/applications/network/ipconfig/ipconfig.c index a4dbbc54ad6..9208aa523ec 100644 --- a/base/applications/network/ipconfig/ipconfig.c +++ b/base/applications/network/ipconfig/ipconfig.c @@ -22,8 +22,6 @@ #include #include #include -//#include -//#include #include #include #include @@ -1331,8 +1329,11 @@ done: } VOID -Usage(VOID) +Usage( + _In_ BOOL Error) { + if (Error) + ConResPrintf(StdOut, IDS_CMDLINEERROR); ConResPrintf(StdOut, IDS_USAGE); } @@ -1402,7 +1403,7 @@ int wmain(int argc, wchar_t *argv[]) break; case 2: /* Process all the options that take no parameters */ if (DoUsage) - Usage(); + Usage(FALSE); else if (DoAll) ShowInfo(TRUE, TRUE); else if (DoRelease) @@ -1416,7 +1417,7 @@ int wmain(int argc, wchar_t *argv[]) else if (DoDisplaydns) DisplayDns(); else - Usage(); + Usage(TRUE); break; case 3: /* Process all the options that can have 1 parameter */ if (DoRelease) @@ -1428,16 +1429,16 @@ int wmain(int argc, wchar_t *argv[]) else if (DoSetclassid) SetClassId(argv[2], NULL); else - Usage(); + Usage(TRUE); break; case 4: /* Process all the options that can have 2 parameters */ if (DoSetclassid) SetClassId(argv[2], argv[3]); else - Usage(); + Usage(TRUE); break; default: - Usage(); + Usage(TRUE); } return 0; diff --git a/base/applications/network/ipconfig/lang/bg-BG.rc b/base/applications/network/ipconfig/lang/bg-BG.rc index 00f74bc580a..a0a2ec94adf 100644 --- a/base/applications/network/ipconfig/lang/bg-BG.rc +++ b/base/applications/network/ipconfig/lang/bg-BG.rc @@ -139,4 +139,5 @@ BEGIN > ipconfig /release *Con* ... освобождава всички съвпадащи свързвания,\n\ например „Local Area Connection 1“\n\ или „Local Area Connection 2“\n" + IDS_CMDLINEERROR "\nError: unrecongnized or incomplete command line.\n" END diff --git a/base/applications/network/ipconfig/lang/de-DE.rc b/base/applications/network/ipconfig/lang/de-DE.rc index dfa925fb59b..de999ea89ae 100644 --- a/base/applications/network/ipconfig/lang/de-DE.rc +++ b/base/applications/network/ipconfig/lang/de-DE.rc @@ -141,4 +141,5 @@ Beispiele:\n\ > ipconfig /release *Ver* ... Gibt alle passenden Verbindungen frei,\n\ z.B. ""Lokale Verbindung 1""\n\ oder ""Lokale Verbindung 2""\n" + IDS_CMDLINEERROR "\nFehler: Nicht erkannte oder unvollständige Befehlszeile.\n" END diff --git a/base/applications/network/ipconfig/lang/el-GR.rc b/base/applications/network/ipconfig/lang/el-GR.rc index c8a150acf23..5b85146399f 100644 --- a/base/applications/network/ipconfig/lang/el-GR.rc +++ b/base/applications/network/ipconfig/lang/el-GR.rc @@ -140,4 +140,5 @@ Options:\n\ > ipconfig /release *Con* ... αποδεσμεύει όλες τις συνδέσεις που ταιριάζουν,\n\ eg. ""Local Area Connection 1""\n\ or ""Local Area Connection 2""\n" + IDS_CMDLINEERROR "\nError: unrecongnized or incomplete command line.\n" END diff --git a/base/applications/network/ipconfig/lang/en-US.rc b/base/applications/network/ipconfig/lang/en-US.rc index 093fc8e5c95..17fe8014aa7 100644 --- a/base/applications/network/ipconfig/lang/en-US.rc +++ b/base/applications/network/ipconfig/lang/en-US.rc @@ -137,4 +137,5 @@ Examples:\n\ > ipconfig /release *Con* ... release all matching connections,\n\ eg. ""Local Area Connection 1""\n\ or ""Local Area Connection 2""\n" + IDS_CMDLINEERROR "\nError: unrecongnized or incomplete command line.\n" END diff --git a/base/applications/network/ipconfig/lang/es-ES.rc b/base/applications/network/ipconfig/lang/es-ES.rc index 4b9d5d606eb..bd7eaa97bdf 100644 --- a/base/applications/network/ipconfig/lang/es-ES.rc +++ b/base/applications/network/ipconfig/lang/es-ES.rc @@ -140,4 +140,5 @@ Ejemplos:\n\ > ipconfig /release *Con* ... Libera todas las conexiones coincidentes,\n\ por ejemplo. ""Conexión de área local 1""\n\ o ""Conexión de área local 2"".\n" + IDS_CMDLINEERROR "\nError: unrecongnized or incomplete command line.\n" END diff --git a/base/applications/network/ipconfig/lang/fr-FR.rc b/base/applications/network/ipconfig/lang/fr-FR.rc index 50c962b1461..c44d0440508 100644 --- a/base/applications/network/ipconfig/lang/fr-FR.rc +++ b/base/applications/network/ipconfig/lang/fr-FR.rc @@ -144,4 +144,5 @@ Exemples :\n\ > ipconfig /release *Con* ... Libère toutes les connexions concernées,\n\ par ex. ""Connexion au réseau local 1""\n\ ou ""Connexion au réseau local 2""\n" + IDS_CMDLINEERROR "\nError: unrecongnized or incomplete command line.\n" END diff --git a/base/applications/network/ipconfig/lang/id-ID.rc b/base/applications/network/ipconfig/lang/id-ID.rc index 2ab47ae240c..1089c32b424 100644 --- a/base/applications/network/ipconfig/lang/id-ID.rc +++ b/base/applications/network/ipconfig/lang/id-ID.rc @@ -138,4 +138,5 @@ Contoh:\n\ > ipconfig /release *Con* ... melepaskan semua koneksi yang sama,\n\ ""Local Area Connection 1"" atau\n\ ""Local Area Connection 2""\n" + IDS_CMDLINEERROR "\nError: unrecongnized or incomplete command line.\n" END diff --git a/base/applications/network/ipconfig/lang/it-IT.rc b/base/applications/network/ipconfig/lang/it-IT.rc index 5c2cd2a5ef1..ea9b9da6379 100644 --- a/base/applications/network/ipconfig/lang/it-IT.rc +++ b/base/applications/network/ipconfig/lang/it-IT.rc @@ -137,4 +137,5 @@ Esempi:\n\ > ipconfig /release *Con* ... libera tutte le connessioni corrispondenti,\n\ es: ""Connessione area locale 1""\n\ or ""Connessione area locale 2""\n" + IDS_CMDLINEERROR "\nError: unrecongnized or incomplete command line.\n" END diff --git a/base/applications/network/ipconfig/lang/ja-JP.rc b/base/applications/network/ipconfig/lang/ja-JP.rc index 8b36a72ceb9..20496aad226 100644 --- a/base/applications/network/ipconfig/lang/ja-JP.rc +++ b/base/applications/network/ipconfig/lang/ja-JP.rc @@ -136,4 +136,5 @@ setclassid の場合、classid が指定されていなければ、classid は > ipconfig /release *Con* ... すべてのマッチする接続を解放します。\n\ 例 ""Local Area Connection 1"" または\n\ ""Local Area Connection 2""\n" + IDS_CMDLINEERROR "\nError: unrecongnized or incomplete command line.\n" END diff --git a/base/applications/network/ipconfig/lang/no-NO.rc b/base/applications/network/ipconfig/lang/no-NO.rc index a07ad6e3b26..8ecf3b7737c 100644 --- a/base/applications/network/ipconfig/lang/no-NO.rc +++ b/base/applications/network/ipconfig/lang/no-NO.rc @@ -137,4 +137,5 @@ Eksempler:\n\ > ipconfig /release *Til* ... Frigi alle samsvarende tilkoblinger,\n\ for eksempel ""Lokal tilkobling 1""\n\ eller ""Lokaltilkobling 2""\n" + IDS_CMDLINEERROR "\nError: unrecongnized or incomplete command line.\n" END diff --git a/base/applications/network/ipconfig/lang/pl-PL.rc b/base/applications/network/ipconfig/lang/pl-PL.rc index b1fd2e79223..3958c00bf06 100644 --- a/base/applications/network/ipconfig/lang/pl-PL.rc +++ b/base/applications/network/ipconfig/lang/pl-PL.rc @@ -144,4 +144,5 @@ Przykłady:\n\ > ipconfig /release *Poł* ... Zwalnia wszystkie pasujące połączenia,\n\ np. ""Połączenie lokalne 1""\n\ lub ""Połączenie lokalne 2""\n" + IDS_CMDLINEERROR "\nError: unrecongnized or incomplete command line.\n" END diff --git a/base/applications/network/ipconfig/lang/ro-RO.rc b/base/applications/network/ipconfig/lang/ro-RO.rc index 7368348274c..e2450ada154 100644 --- a/base/applications/network/ipconfig/lang/ro-RO.rc +++ b/base/applications/network/ipconfig/lang/ro-RO.rc @@ -143,4 +143,5 @@ Exemple:\n\ numele lor secvența ""Con"".\n\ ex. ""Conexiune locală 1""\n\ sau ""Conexiune locală 2""\n" + IDS_CMDLINEERROR "\nError: unrecongnized or incomplete command line.\n" END diff --git a/base/applications/network/ipconfig/lang/ru-RU.rc b/base/applications/network/ipconfig/lang/ru-RU.rc index c29b8a81c45..3387760a6b9 100644 --- a/base/applications/network/ipconfig/lang/ru-RU.rc +++ b/base/applications/network/ipconfig/lang/ru-RU.rc @@ -142,4 +142,5 @@ IP-адреса для всех адаптеров, для которых сущ с соответствующим именем, например:\n\ ""Local Area Connection 1"" или\n\ ""Local Area Connection 2""\n" + IDS_CMDLINEERROR "\nError: unrecongnized or incomplete command line.\n" END diff --git a/base/applications/network/ipconfig/lang/sk-SK.rc b/base/applications/network/ipconfig/lang/sk-SK.rc index 5cf0e637673..001af4c0d92 100644 --- a/base/applications/network/ipconfig/lang/sk-SK.rc +++ b/base/applications/network/ipconfig/lang/sk-SK.rc @@ -137,4 +137,5 @@ Príklady:\n\ > ipconfig /release *Con* ... release all matching connections,\n\ napr. ""Lokálne pripojenie 1""\n\ alebo ""Lokálne pripojenie 2""\n" + IDS_CMDLINEERROR "\nError: unrecongnized or incomplete command line.\n" END diff --git a/base/applications/network/ipconfig/lang/sq-AL.rc b/base/applications/network/ipconfig/lang/sq-AL.rc index 83990d3f1bc..24f737fc657 100644 --- a/base/applications/network/ipconfig/lang/sq-AL.rc +++ b/base/applications/network/ipconfig/lang/sq-AL.rc @@ -139,4 +139,5 @@ Examples:\n\ > ipconfig /release *Con* ... renovo te gjithe lidhjet përputhese,\n\ eg. ""Local Area Connection 1""\n\ or ""Local Area Connection 2""\n" + IDS_CMDLINEERROR "\nError: unrecongnized or incomplete command line.\n" END diff --git a/base/applications/network/ipconfig/lang/sv-SE.rc b/base/applications/network/ipconfig/lang/sv-SE.rc index 2234fa131b1..86d22e720c4 100644 --- a/base/applications/network/ipconfig/lang/sv-SE.rc +++ b/base/applications/network/ipconfig/lang/sv-SE.rc @@ -138,4 +138,5 @@ Exempel:\n\ > ipconfig /release *Ans* ... frigör alla matchande anslutningar,\n\ t.ex. ""Anslutning till lokalt nätverk 1""\n\ eller ""Anslutning till lokalt nätverk 2""\n" + IDS_CMDLINEERROR "\nError: unrecongnized or incomplete command line.\n" END diff --git a/base/applications/network/ipconfig/lang/tr-TR.rc b/base/applications/network/ipconfig/lang/tr-TR.rc index 5574ddfff5f..9ef4bc17658 100644 --- a/base/applications/network/ipconfig/lang/tr-TR.rc +++ b/base/applications/network/ipconfig/lang/tr-TR.rc @@ -138,4 +138,5 @@ setclassid için, bir sınıf kimliği belirtilmemişse sınıf kimliği silinmi > ipconfig /release *Bağ* ... Eşleşen tüm bağlantıları bırakır.\n\ Ör: ""Yerel Ağ Bağlantısı 1"" veya\n\ ""Yerel Ağ Bağlantısı 2""\n" + IDS_CMDLINEERROR "\nError: unrecongnized or incomplete command line.\n" END diff --git a/base/applications/network/ipconfig/lang/uk-UA.rc b/base/applications/network/ipconfig/lang/uk-UA.rc index 61f6b4c3816..17088ad313c 100644 --- a/base/applications/network/ipconfig/lang/uk-UA.rc +++ b/base/applications/network/ipconfig/lang/uk-UA.rc @@ -140,4 +140,5 @@ IP-адреса звільняється чи оновлюється для вс всі з'єднання, які містять у назві ""Сon""\n\ напр. ""Local Area Connection 1""\n\ чи ""Local Area Connection 2""\n" + IDS_CMDLINEERROR "\nError: unrecongnized or incomplete command line.\n" END diff --git a/base/applications/network/ipconfig/lang/zh-CN.rc b/base/applications/network/ipconfig/lang/zh-CN.rc index 0af1a302841..b9580f14fee 100644 --- a/base/applications/network/ipconfig/lang/zh-CN.rc +++ b/base/applications/network/ipconfig/lang/zh-CN.rc @@ -138,4 +138,5 @@ BEGIN > ipconfig /release *Con* ... 释放所有匹配的连接,\n\ 如 ""Local Area Connection 1""\n\ 或 ""Local Area Connection 2""\n" + IDS_CMDLINEERROR "\nError: unrecongnized or incomplete command line.\n" END diff --git a/base/applications/network/ipconfig/lang/zh-TW.rc b/base/applications/network/ipconfig/lang/zh-TW.rc index 83897b4bddd..b37d30ea33c 100644 --- a/base/applications/network/ipconfig/lang/zh-TW.rc +++ b/base/applications/network/ipconfig/lang/zh-TW.rc @@ -138,4 +138,5 @@ BEGIN > ipconfig /release *Con* ... 釋放所有相符的連接,\n\ 如 ""Local Area Connection 1""\n\ 或 ""Local Area Connection 2""\n" + IDS_CMDLINEERROR "\nError: unrecongnized or incomplete command line.\n" END diff --git a/base/applications/network/ipconfig/resource.h b/base/applications/network/ipconfig/resource.h index 84e568664f0..81b5a24acd2 100644 --- a/base/applications/network/ipconfig/resource.h +++ b/base/applications/network/ipconfig/resource.h @@ -66,6 +66,7 @@ #define IDS_DNSTYPESRV 179 #define IDS_USAGE 180 +#define IDS_CMDLINEERROR 181 #define IDS_DNSNORECORD 200 #define IDS_DNSNONAME 201