https://git.reactos.org/?p=reactos.git;a=commitdiff;h=417687e92e8aff1933c231c6e7b8ee137c59e45c

commit 417687e92e8aff1933c231c6e7b8ee137c59e45c
Author:     Eric Kohl <[email protected]>
AuthorDate: Sat May 21 10:43:38 2022 +0200
Commit:     Eric Kohl <[email protected]>
CommitDate: Sat May 21 10:43:38 2022 +0200

    [DISKPART] Improvements to the dump, help and delete commands
    
    - Print help only if a help string exists.
    - Use the command table for the dump sub commands.
    - Add sub commands for the delete command.
---
 base/system/diskpart/delete.c      |  21 ++++-
 base/system/diskpart/diskpart.h    |  39 +++++++--
 base/system/diskpart/dump.c        |  46 ++--------
 base/system/diskpart/help.c        |  13 ++-
 base/system/diskpart/interpreter.c |  10 ++-
 base/system/diskpart/lang/en-US.rc |   8 +-
 base/system/diskpart/lang/pl-PL.rc |   8 +-
 base/system/diskpart/lang/pt-PT.rc |   8 +-
 base/system/diskpart/lang/ro-RO.rc |   8 +-
 base/system/diskpart/lang/ru-RU.rc |   8 +-
 base/system/diskpart/lang/sq-AL.rc |   8 +-
 base/system/diskpart/lang/tr-TR.rc |   8 +-
 base/system/diskpart/lang/zh-CN.rc |   8 +-
 base/system/diskpart/lang/zh-TW.rc |   8 +-
 base/system/diskpart/resource.h    | 166 +++++++++++++++++++------------------
 15 files changed, 226 insertions(+), 141 deletions(-)

diff --git a/base/system/diskpart/delete.c b/base/system/diskpart/delete.c
index 13b298c54c8..de712944dcc 100644
--- a/base/system/diskpart/delete.c
+++ b/base/system/diskpart/delete.c
@@ -8,7 +8,26 @@
 
 #include "diskpart.h"
 
-BOOL delete_main(INT argc, LPWSTR *argv)
+BOOL
+DeleteDisk(
+    _In_ INT argc,
+    _In_ PWSTR *argv)
+{
+    return TRUE;
+}
+
+BOOL
+DeletePartition(
+    _In_ INT argc,
+    _In_ PWSTR *argv)
+{
+    return TRUE;
+}
+
+BOOL
+DeleteVolume(
+    _In_ INT argc,
+    _In_ PWSTR *argv)
 {
     return TRUE;
 }
diff --git a/base/system/diskpart/diskpart.h b/base/system/diskpart/diskpart.h
index 5a1a3ba197b..f13e6724262 100644
--- a/base/system/diskpart/diskpart.h
+++ b/base/system/diskpart/diskpart.h
@@ -237,21 +237,35 @@ BOOL convert_main(INT argc, LPWSTR *argv);
 /* create.c */
 BOOL
 CreateExtendedPartition(
-    INT argc,
-    PWSTR *argv);
+    _In_ INT argc,
+    _In_ PWSTR *argv);
 
 BOOL
 CreateLogicalPartition(
-    INT argc,
-    PWSTR *argv);
+    _In_ INT argc,
+    _In_ PWSTR *argv);
 
 BOOL
 CreatePrimaryPartition(
-    INT argc,
-    PWSTR *argv);
+    _In_ INT argc,
+    _In_ PWSTR *argv);
 
 /* delete.c */
-BOOL delete_main(INT argc, LPWSTR *argv);
+BOOL
+DeleteDisk(
+    _In_ INT argc,
+    _In_ PWSTR *argv);
+
+BOOL
+DeletePartition(
+    _In_ INT argc,
+    _In_ PWSTR *argv);
+
+BOOL
+DeleteVolume(
+    _In_ INT argc,
+    _In_ PWSTR *argv);
+
 
 /* detach.c */
 BOOL detach_main(INT argc, LPWSTR *argv);
@@ -275,7 +289,16 @@ DetailVolume(
 /* diskpart.c */
 
 /* dump.c */
-BOOL dump_main(INT argc, LPWSTR *argv);
+BOOL
+DumpDisk(
+    _In_ INT argc,
+    _In_ LPWSTR *argv);
+
+BOOL
+DumpPartition(
+    _In_ INT argc,
+    _In_ LPWSTR *argv);
+
 
 /* expand.c */
 BOOL expand_main(INT argc, LPWSTR *argv);
diff --git a/base/system/diskpart/dump.c b/base/system/diskpart/dump.c
index 6e2e46a8733..bc20dff607e 100644
--- a/base/system/diskpart/dump.c
+++ b/base/system/diskpart/dump.c
@@ -44,8 +44,7 @@ HexDump(
 }
 
 
-static
-VOID
+BOOL
 DumpDisk(
     _In_ INT argc,
     _In_ LPWSTR *argv)
@@ -72,7 +71,7 @@ DumpDisk(
     if (CurrentDisk == NULL)
     {
         ConResPuts(StdOut, IDS_SELECT_NO_DISK);
-        return;
+        return TRUE;
     }
 
     Sector = _wcstoi64(argv[2], &endptr, 0);
@@ -80,7 +79,7 @@ DumpDisk(
         (Sector < 0))
     {
         ConResPuts(StdErr, IDS_ERROR_INVALID_ARGS);
-        return;
+        return TRUE;
     }
 
     pSectorBuffer = RtlAllocateHeap(RtlGetProcessHeap(), HEAP_ZERO_MEMORY, 
CurrentDisk->BytesPerSector);
@@ -139,12 +138,11 @@ done:
 
     RtlFreeHeap(RtlGetProcessHeap(), 0, pSectorBuffer);
 
-    return;
+    return TRUE;
 }
 
 
-static
-VOID
+BOOL
 DumpPartition(
     _In_ INT argc,
     _In_ LPWSTR *argv)
@@ -172,13 +170,13 @@ DumpPartition(
     if (CurrentDisk == NULL)
     {
         ConResPuts(StdOut, IDS_SELECT_NO_DISK);
-        return;
+        return TRUE;
     }
 
     if (CurrentPartition == NULL)
     {
         ConResPuts(StdOut, IDS_SELECT_NO_PARTITION);
-        return;
+        return TRUE;
     }
 
     Sector = _wcstoi64(argv[2], &endptr, 0);
@@ -186,7 +184,7 @@ DumpPartition(
         (Sector < 0))
     {
         ConResPuts(StdErr, IDS_ERROR_INVALID_ARGS);
-        return;
+        return TRUE;
     }
 
     pSectorBuffer = RtlAllocateHeap(RtlGetProcessHeap(), HEAP_ZERO_MEMORY, 
CurrentDisk->BytesPerSector);
@@ -246,33 +244,5 @@ done:
 
     RtlFreeHeap(RtlGetProcessHeap(), 0, pSectorBuffer);
 
-    return;
-}
-
-
-BOOL
-dump_main(
-    _In_ INT argc,
-    _In_ LPWSTR *argv)
-{
-    /* gets the first word from the string */
-#if 0
-    if (argc == 1)
-    {
-        ConResPuts(StdOut, IDS_HELP_CMD_LIST);
-        return TRUE;
-    }
-#endif
-
-    /* determines which to list (disk, partition, etc.) */
-    if (!wcsicmp(argv[1], L"disk"))
-        DumpDisk(argc, argv);
-    else if (!wcsicmp(argv[1], L"partition"))
-        DumpPartition(argc, argv);
-#if 0
-    else
-        ConResPuts(StdOut, IDS_HELP_CMD_LIST);
-#endif
-
     return TRUE;
 }
diff --git a/base/system/diskpart/help.c b/base/system/diskpart/help.c
index 2cd101d4efb..bd7bb490a42 100644
--- a/base/system/diskpart/help.c
+++ b/base/system/diskpart/help.c
@@ -28,7 +28,10 @@ HelpCommandList(VOID)
     /* List all the commands and the basic descriptions */
     for (cmdptr = cmds; cmdptr->cmd1; cmdptr++)
     {
-        if (cmdptr->cmd1 != NULL && cmdptr->cmd2 == NULL && cmdptr->cmd3 == 
NULL)
+        if ((cmdptr->cmd1 != NULL) &&
+            (cmdptr->cmd2 == NULL) &&
+            (cmdptr->cmd3 == NULL) &&
+            (cmdptr->help != IDS_NONE))
         {
             K32LoadStringW(GetModuleHandle(NULL), cmdptr->help, szOutput, 
ARRAYSIZE(szOutput));
             ConPrintf(StdOut, szFormat, cmdptr->cmd1, szOutput);
@@ -57,7 +60,10 @@ HelpCommand(
     {
         if (pCommand->cmd1 != NULL && pCommand->cmd2 == NULL && pCommand->cmd3 
== NULL)
         {
-            if (wcsicmp(pCommand->cmd1, cmdptr->cmd1) == 0 && cmdptr->cmd2 != 
NULL && cmdptr->cmd3 == NULL)
+            if ((wcsicmp(pCommand->cmd1, cmdptr->cmd1) == 0) &&
+                (cmdptr->cmd2 != NULL) &&
+                (cmdptr->cmd3 == NULL) &&
+                (cmdptr->help != IDS_NONE))
             {
                 K32LoadStringW(GetModuleHandle(NULL), cmdptr->help, szOutput, 
ARRAYSIZE(szOutput));
                 ConPrintf(StdOut, szFormat, cmdptr->cmd2, szOutput);
@@ -68,7 +74,8 @@ HelpCommand(
         {
             if ((wcsicmp(pCommand->cmd1, cmdptr->cmd1) == 0) &&
                 (wcsicmp(pCommand->cmd2, cmdptr->cmd2) == 0) &&
-                (cmdptr->cmd3 != NULL))
+                (cmdptr->cmd3 != NULL) &&
+                (cmdptr->help != IDS_NONE))
             {
                 K32LoadStringW(GetModuleHandle(NULL), cmdptr->help, szOutput, 
ARRAYSIZE(szOutput));
                 ConPrintf(StdOut, szFormat, cmdptr->cmd3, szOutput);
diff --git a/base/system/diskpart/interpreter.c 
b/base/system/diskpart/interpreter.c
index 81bc805fe5f..5e4eafa47ee 100644
--- a/base/system/diskpart/interpreter.c
+++ b/base/system/diskpart/interpreter.c
@@ -36,7 +36,11 @@ COMMAND cmds[] =
     {L"CREATE",      L"VOLUME",    NULL,        NULL,                    
IDS_HELP_CREATE_VOLUME,             IDS_NONE},
     {L"CREATE",      L"VDISK",     NULL,        NULL,                    
IDS_HELP_CREATE_VDISK,              IDS_NONE},
 
-    {L"DELETE",      NULL,         NULL,        delete_main,             
IDS_HELP_DELETE,                    IDS_COMMAND_DELETE},
+    {L"DELETE",      NULL,         NULL,        NULL,                    
IDS_HELP_DELETE,                    IDS_NONE},
+    {L"DELETE",      L"DISK",      NULL,        DeleteDisk,              
IDS_HELP_DELETE_DISK,               IDS_COMMAND_DELETE_DISK},
+    {L"DELETE",      L"PARTITION", NULL,        DeletePartition,         
IDS_HELP_DELETE_PARTITION,          IDS_COMMAND_DELETE_PARTITION},
+    {L"DELETE",      L"VOLUME",    NULL,        DeleteVolume,            
IDS_HELP_DELETE_VOLUME,             IDS_COMMAND_DELETE_VOLUME},
+
     {L"DETACH",      NULL,         NULL,        detach_main,             
IDS_HELP_DETACH,                    IDS_COMMAND_DETACH},
 
     {L"DETAIL",      NULL,         NULL,        NULL,                    
IDS_HELP_DETAIL,                    IDS_NONE},
@@ -44,7 +48,9 @@ COMMAND cmds[] =
     {L"DETAIL",      L"PARTITION", NULL,        DetailPartition,         
IDS_HELP_DETAIL_PARTITION,          IDS_COMMAND_DETAIL_PARTITION},
     {L"DETAIL",      L"VOLUME",    NULL,        DetailVolume,            
IDS_HELP_DETAIL_VOLUME,             IDS_COMMAND_DETAIL_VOLUME},
 
-    {L"DUMP",        NULL,         NULL,        dump_main,               
IDS_NONE,                           IDS_NONE},
+    {L"DUMP",        NULL,         NULL,        NULL,                    
IDS_NONE,                           IDS_NONE},
+    {L"DUMP",        L"DISK",      NULL,        DumpDisk,                
IDS_NONE,                           IDS_NONE},
+    {L"DUMP",        L"PARTITION", NULL,        DumpPartition,           
IDS_NONE,                           IDS_NONE},
     {L"EXIT",        NULL,         NULL,        NULL,                    
IDS_HELP_EXIT,                      IDS_COMMAND_EXIT},
 
     {L"EXPAND",      NULL,         NULL,        expand_main,             
IDS_HELP_EXPAND,                    IDS_COMMAND_EXPAND},
diff --git a/base/system/diskpart/lang/en-US.rc 
b/base/system/diskpart/lang/en-US.rc
index c024d5abbef..7289cb2d159 100644
--- a/base/system/diskpart/lang/en-US.rc
+++ b/base/system/diskpart/lang/en-US.rc
@@ -125,6 +125,10 @@ BEGIN
     IDS_HELP_CREATE_VDISK              "Create a virtual disk file.\n"
 
     IDS_HELP_DELETE                    "Delete an object.\n"
+    IDS_HELP_DELETE_DISK               "Delete a disk.\n"
+    IDS_HELP_DELETE_PARTITION          "Delete a partition.\n"
+    IDS_HELP_DELETE_VOLUME             "Delete a volume.\n"
+
     IDS_HELP_DETACH                    "Detaches a virtual disk file.\n"
 
     IDS_HELP_DETAIL                    "Provide details about an object.\n"
@@ -245,7 +249,9 @@ END
 /* Delete help description */
 STRINGTABLE
 BEGIN
-    IDS_COMMAND_DELETE "<Add DELETE command help text here>\n"
+    IDS_COMMAND_DELETE_DISK "<Add DELETE DISK command help text here>\n"
+    IDS_COMMAND_DELETE_PARTITION "<Add DELETE PARTITION command help text 
here>\n"
+    IDS_COMMAND_DELETE_VOLUME "<Add DELETE VOLUME command help text here>\n"
 END
 
 /* Delete help description */
diff --git a/base/system/diskpart/lang/pl-PL.rc 
b/base/system/diskpart/lang/pl-PL.rc
index e2fa075953f..426c948519d 100644
--- a/base/system/diskpart/lang/pl-PL.rc
+++ b/base/system/diskpart/lang/pl-PL.rc
@@ -125,6 +125,10 @@ BEGIN
     IDS_HELP_CREATE_VDISK              "Create a virtual disk file.\n"
 
     IDS_HELP_DELETE                    "Usuń obiekt.\n"
+    IDS_HELP_DELETE_DISK               "Delete a disk.\n"
+    IDS_HELP_DELETE_PARTITION          "Delete a partition.\n"
+    IDS_HELP_DELETE_VOLUME             "Delete a volume.\n"
+
     IDS_HELP_DETACH                    "Odłącza wirtualny dysk.\n"
 
     IDS_HELP_DETAIL                    "Podaj szczegółowe informacje o 
obiekcie.\n"
@@ -245,7 +249,9 @@ END
 /* Delete help description */
 STRINGTABLE
 BEGIN
-    IDS_COMMAND_DELETE "<Add DELETE command help text here>\n"
+    IDS_COMMAND_DELETE_DISK "<Add DELETE DISK command help text here>\n"
+    IDS_COMMAND_DELETE_PARTITION "<Add DELETE PARTITION command help text 
here>\n"
+    IDS_COMMAND_DELETE_VOLUME "<Add DELETE VOLUME command help text here>\n"
 END
 
 /* Delete help description */
diff --git a/base/system/diskpart/lang/pt-PT.rc 
b/base/system/diskpart/lang/pt-PT.rc
index 7f6cde91f0f..86ec0a9c6e1 100644
--- a/base/system/diskpart/lang/pt-PT.rc
+++ b/base/system/diskpart/lang/pt-PT.rc
@@ -127,6 +127,10 @@ BEGIN
     IDS_HELP_CREATE_VDISK              "Create a virtual disk file.\n"
 
     IDS_HELP_DELETE                    "Apaga um objecto.\n"
+    IDS_HELP_DELETE_DISK               "Delete a disk.\n"
+    IDS_HELP_DELETE_PARTITION          "Delete a partition.\n"
+    IDS_HELP_DELETE_VOLUME             "Delete a volume.\n"
+
     IDS_HELP_DETACH                    "Ejecta um disco virtual.\n"
 
     IDS_HELP_DETAIL                    "Fornece detalhes sobre um objecto.\n"
@@ -247,7 +251,9 @@ END
 /* Delete help description */
 STRINGTABLE
 BEGIN
-    IDS_COMMAND_DELETE "<Add DELETE command help text here>\n"
+    IDS_COMMAND_DELETE_DISK "<Add DELETE DISK command help text here>\n"
+    IDS_COMMAND_DELETE_PARTITION "<Add DELETE PARTITION command help text 
here>\n"
+    IDS_COMMAND_DELETE_VOLUME "<Add DELETE VOLUME command help text here>\n"
 END
 
 /* Delete help description */
diff --git a/base/system/diskpart/lang/ro-RO.rc 
b/base/system/diskpart/lang/ro-RO.rc
index 7b63f211d33..add736038ea 100644
--- a/base/system/diskpart/lang/ro-RO.rc
+++ b/base/system/diskpart/lang/ro-RO.rc
@@ -127,6 +127,10 @@ BEGIN
     IDS_HELP_CREATE_VDISK              "Create a virtual disk file.\n"
 
     IDS_HELP_DELETE                    "Elimină un obiect.\n"
+    IDS_HELP_DELETE_DISK               "Delete a disk.\n"
+    IDS_HELP_DELETE_PARTITION          "Delete a partition.\n"
+    IDS_HELP_DELETE_VOLUME             "Delete a volume.\n"
+
     IDS_HELP_DETACH                    "Detașează un fișier de disc virtual.\n"
 
     IDS_HELP_DETAIL                    "Oferă detalii despre un obiect.\n"
@@ -247,7 +251,9 @@ END
 /* Delete help description */
 STRINGTABLE
 BEGIN
-    IDS_COMMAND_DELETE "<Add DELETE command help text here>\n"
+    IDS_COMMAND_DELETE_DISK "<Add DELETE DISK command help text here>\n"
+    IDS_COMMAND_DELETE_PARTITION "<Add DELETE PARTITION command help text 
here>\n"
+    IDS_COMMAND_DELETE_VOLUME "<Add DELETE VOLUME command help text here>\n"
 END
 
 /* Delete help description */
diff --git a/base/system/diskpart/lang/ru-RU.rc 
b/base/system/diskpart/lang/ru-RU.rc
index 53842f2c4b2..41867204039 100644
--- a/base/system/diskpart/lang/ru-RU.rc
+++ b/base/system/diskpart/lang/ru-RU.rc
@@ -127,6 +127,10 @@ BEGIN
     IDS_HELP_CREATE_VDISK              "Create a virtual disk file.\n"
 
     IDS_HELP_DELETE                    "Удалить объект.\n"
+    IDS_HELP_DELETE_DISK               "Delete a disk.\n"
+    IDS_HELP_DELETE_PARTITION          "Delete a partition.\n"
+    IDS_HELP_DELETE_VOLUME             "Delete a volume.\n"
+
     IDS_HELP_DETACH                    "Отсоединяет файл виртуального диска.\n"
 
     IDS_HELP_DETAIL                    "Просмотр параметров объекта.\n"
@@ -247,7 +251,9 @@ END
 /* Delete help description */
 STRINGTABLE
 BEGIN
-    IDS_COMMAND_DELETE "<Add DELETE command help text here>\n"
+    IDS_COMMAND_DELETE_DISK "<Add DELETE DISK command help text here>\n"
+    IDS_COMMAND_DELETE_PARTITION "<Add DELETE PARTITION command help text 
here>\n"
+    IDS_COMMAND_DELETE_VOLUME "<Add DELETE VOLUME command help text here>\n"
 END
 
 /* Delete help description */
diff --git a/base/system/diskpart/lang/sq-AL.rc 
b/base/system/diskpart/lang/sq-AL.rc
index 7a37345166a..1f75c1588bf 100644
--- a/base/system/diskpart/lang/sq-AL.rc
+++ b/base/system/diskpart/lang/sq-AL.rc
@@ -129,6 +129,10 @@ BEGIN
     IDS_HELP_CREATE_VDISK              "Create a virtual disk file.\n"
 
     IDS_HELP_DELETE                    "Fshin një objekt.\n"
+    IDS_HELP_DELETE_DISK               "Delete a disk.\n"
+    IDS_HELP_DELETE_PARTITION          "Delete a partition.\n"
+    IDS_HELP_DELETE_VOLUME             "Delete a volume.\n"
+
     IDS_HELP_DETACH                    "Heq nga lidhja nje dokument nga disku 
virtual.\n"
 
     IDS_HELP_DETAIL                    "Shfaq detaje mbi një objekt.\n"
@@ -249,7 +253,9 @@ END
 /* Delete help description */
 STRINGTABLE
 BEGIN
-    IDS_COMMAND_DELETE "<Add DELETE command help text here>\n"
+    IDS_COMMAND_DELETE_DISK "<Add DELETE DISK command help text here>\n"
+    IDS_COMMAND_DELETE_PARTITION "<Add DELETE PARTITION command help text 
here>\n"
+    IDS_COMMAND_DELETE_VOLUME "<Add DELETE VOLUME command help text here>\n"
 END
 
 /* Delete help description */
diff --git a/base/system/diskpart/lang/tr-TR.rc 
b/base/system/diskpart/lang/tr-TR.rc
index 07e5a72047c..1daaf0e90e4 100644
--- a/base/system/diskpart/lang/tr-TR.rc
+++ b/base/system/diskpart/lang/tr-TR.rc
@@ -127,6 +127,10 @@ BEGIN
     IDS_HELP_CREATE_VDISK              "Create a virtual disk file.\n"
 
     IDS_HELP_DELETE                    "Bir nesne sil.\n"
+    IDS_HELP_DELETE_DISK               "Delete a disk.\n"
+    IDS_HELP_DELETE_PARTITION          "Delete a partition.\n"
+    IDS_HELP_DELETE_VOLUME             "Delete a volume.\n"
+
     IDS_HELP_DETACH                    "Bir sanal disk alanı ayırır.\n"
 
     IDS_HELP_DETAIL                    "Bir nesne hakkında ayrıntılar sağla.\n"
@@ -247,7 +251,9 @@ END
 /* Delete help description */
 STRINGTABLE
 BEGIN
-    IDS_COMMAND_DELETE "<Add DELETE command help text here>\n"
+    IDS_COMMAND_DELETE_DISK "<Add DELETE DISK command help text here>\n"
+    IDS_COMMAND_DELETE_PARTITION "<Add DELETE PARTITION command help text 
here>\n"
+    IDS_COMMAND_DELETE_VOLUME "<Add DELETE VOLUME command help text here>\n"
 END
 
 /* Delete help description */
diff --git a/base/system/diskpart/lang/zh-CN.rc 
b/base/system/diskpart/lang/zh-CN.rc
index 56e76b1276f..e698bc05167 100644
--- a/base/system/diskpart/lang/zh-CN.rc
+++ b/base/system/diskpart/lang/zh-CN.rc
@@ -134,6 +134,10 @@ BEGIN
     IDS_HELP_CREATE_VDISK              "Create a virtual disk file.\n"
 
     IDS_HELP_DELETE                    "删除对象。\n"
+    IDS_HELP_DELETE_DISK               "Delete a disk.\n"
+    IDS_HELP_DELETE_PARTITION          "Delete a partition.\n"
+    IDS_HELP_DELETE_VOLUME             "Delete a volume.\n"
+
     IDS_HELP_DETACH                    "分离虚拟磁盘文件。\n"
 
     IDS_HELP_DETAIL                    "提供有关对象的详细信息。\n"
@@ -254,7 +258,9 @@ END
 /* Delete help description */
 STRINGTABLE
 BEGIN
-    IDS_COMMAND_DELETE "<Add DELETE command help text here>\n"
+    IDS_COMMAND_DELETE_DISK "<Add DELETE DISK command help text here>\n"
+    IDS_COMMAND_DELETE_PARTITION "<Add DELETE PARTITION command help text 
here>\n"
+    IDS_COMMAND_DELETE_VOLUME "<Add DELETE VOLUME command help text here>\n"
 END
 
 /* Delete help description */
diff --git a/base/system/diskpart/lang/zh-TW.rc 
b/base/system/diskpart/lang/zh-TW.rc
index 6e49081326a..87dad569f01 100644
--- a/base/system/diskpart/lang/zh-TW.rc
+++ b/base/system/diskpart/lang/zh-TW.rc
@@ -128,6 +128,10 @@ BEGIN
     IDS_HELP_CREATE_VDISK              "Create a virtual disk file.\n"
 
     IDS_HELP_DELETE                    "刪除物件。\n"
+    IDS_HELP_DELETE_DISK               "Delete a disk.\n"
+    IDS_HELP_DELETE_PARTITION          "Delete a partition.\n"
+    IDS_HELP_DELETE_VOLUME             "Delete a volume.\n"
+
     IDS_HELP_DETACH                    "分離一個虛擬磁碟檔案。\n"
 
     IDS_HELP_DETAIL                    "提供物件的詳細資訊。\n"
@@ -248,7 +252,9 @@ END
 /* Delete help description */
 STRINGTABLE
 BEGIN
-    IDS_COMMAND_DELETE "<Add DELETE command help text here>\n"
+    IDS_COMMAND_DELETE_DISK "<Add DELETE DISK command help text here>\n"
+    IDS_COMMAND_DELETE_PARTITION "<Add DELETE PARTITION command help text 
here>\n"
+    IDS_COMMAND_DELETE_VOLUME "<Add DELETE VOLUME command help text here>\n"
 END
 
 /* Delete help description */
diff --git a/base/system/diskpart/resource.h b/base/system/diskpart/resource.h
index 25c0d43472b..313e9b6eee5 100644
--- a/base/system/diskpart/resource.h
+++ b/base/system/diskpart/resource.h
@@ -98,51 +98,55 @@
 #define IDS_HELP_CREATE_VDISK               76
 
 #define IDS_HELP_DELETE                     77
-#define IDS_HELP_DETACH                     78
-
-#define IDS_HELP_DETAIL                     79
-#define IDS_HELP_DETAIL_DISK                80
-#define IDS_HELP_DETAIL_PARTITION           81
-#define IDS_HELP_DETAIL_VOLUME              82
-
-#define IDS_HELP_EXIT                       83
-#define IDS_HELP_EXPAND                     84
-#define IDS_HELP_EXTEND                     85
-#define IDS_HELP_FILESYSTEMS                86
-#define IDS_HELP_FORMAT                     87
-#define IDS_HELP_GPT                        88
-#define IDS_HELP_HELP                       89
-#define IDS_HELP_IMPORT                     90
-#define IDS_HELP_INACTIVE                   91
-
-#define IDS_HELP_LIST                       92
-#define IDS_HELP_LIST_DISK                  93
-#define IDS_HELP_LIST_PARTITION             94
-#define IDS_HELP_LIST_VOLUME                95
-#define IDS_HELP_LIST_VDISK                 96
-
-#define IDS_HELP_MERGE                      97
-#define IDS_HELP_ONLINE                     98
-#define IDS_HELP_OFFLINE                    99
-#define IDS_HELP_RECOVER                   100
-#define IDS_HELP_REM                       101
-#define IDS_HELP_REMOVE                    102
-#define IDS_HELP_REPAIR                    103
-#define IDS_HELP_RESCAN                    104
-#define IDS_HELP_RETAIN                    105
-#define IDS_HELP_SAN                       106
-
-#define IDS_HELP_SELECT                    107
-#define IDS_HELP_SELECT_DISK               108
-#define IDS_HELP_SELECT_PARTITION          109
-#define IDS_HELP_SELECT_VOLUME             110
-#define IDS_HELP_SELECT_VDISK              111
-
-#define IDS_HELP_SETID                     112
-#define IDS_HELP_SHRINK                    113
-
-#define IDS_HELP_UNIQUEID                  114
-#define IDS_HELP_UNIQUEID_DISK             115
+#define IDS_HELP_DELETE_DISK                78
+#define IDS_HELP_DELETE_PARTITION           79
+#define IDS_HELP_DELETE_VOLUME              80
+
+#define IDS_HELP_DETACH                     81
+
+#define IDS_HELP_DETAIL                     82
+#define IDS_HELP_DETAIL_DISK                83
+#define IDS_HELP_DETAIL_PARTITION           84
+#define IDS_HELP_DETAIL_VOLUME              85
+
+#define IDS_HELP_EXIT                       86
+#define IDS_HELP_EXPAND                     87
+#define IDS_HELP_EXTEND                     88
+#define IDS_HELP_FILESYSTEMS                89
+#define IDS_HELP_FORMAT                     90
+#define IDS_HELP_GPT                        91
+#define IDS_HELP_HELP                       92
+#define IDS_HELP_IMPORT                     93
+#define IDS_HELP_INACTIVE                   94
+
+#define IDS_HELP_LIST                       95
+#define IDS_HELP_LIST_DISK                  96
+#define IDS_HELP_LIST_PARTITION             97
+#define IDS_HELP_LIST_VOLUME                98
+#define IDS_HELP_LIST_VDISK                 99
+
+#define IDS_HELP_MERGE                     100
+#define IDS_HELP_ONLINE                    101
+#define IDS_HELP_OFFLINE                   102
+#define IDS_HELP_RECOVER                   103
+#define IDS_HELP_REM                       104
+#define IDS_HELP_REMOVE                    105
+#define IDS_HELP_REPAIR                    106
+#define IDS_HELP_RESCAN                    107
+#define IDS_HELP_RETAIN                    108
+#define IDS_HELP_SAN                       109
+
+#define IDS_HELP_SELECT                    110
+#define IDS_HELP_SELECT_DISK               111
+#define IDS_HELP_SELECT_PARTITION          112
+#define IDS_HELP_SELECT_VOLUME             113
+#define IDS_HELP_SELECT_VDISK              114
+
+#define IDS_HELP_SETID                     115
+#define IDS_HELP_SHRINK                    116
+
+#define IDS_HELP_UNIQUEID                  117
+#define IDS_HELP_UNIQUEID_DISK             118
 
 
 #define IDS_COMMAND_ACTIVE                     1000
@@ -160,41 +164,43 @@
 #define IDS_COMMAND_CREATE_PARTITION_LOGICAL   1012
 #define IDS_COMMAND_CREATE_PARTITION_MSR       1013
 #define IDS_COMMAND_CREATE_PARTITION_PRIMARY   1014
-#define IDS_COMMAND_DELETE                     1015
-#define IDS_COMMAND_DETACH                     1016
-#define IDS_COMMAND_DETAIL_DISK                1017
-#define IDS_COMMAND_DETAIL_PARTITION           1018
-#define IDS_COMMAND_DETAIL_VOLUME              1019
-#define IDS_COMMAND_EXIT                       1020
-#define IDS_COMMAND_EXPAND                     1021
-#define IDS_COMMAND_EXTEND                     1022
-#define IDS_COMMAND_FILESYSTEMS                1023
-#define IDS_COMMAND_FORMAT                     1024
-#define IDS_COMMAND_GPT                        1025
-#define IDS_COMMAND_HELP                       1026
-#define IDS_COMMAND_IMPORT                     1027
-#define IDS_COMMAND_INACTIVE                   1028
-#define IDS_COMMAND_LIST_DISK                  1029
-#define IDS_COMMAND_LIST_PARTITION             1030
-#define IDS_COMMAND_LIST_VOLUME                1031
-#define IDS_COMMAND_LIST_VDISK                 1032
-#define IDS_COMMAND_MERGE                      1033
-#define IDS_COMMAND_ONLINE                     1034
-#define IDS_COMMAND_OFFLINE                    1035
-#define IDS_COMMAND_RECOVER                    1036
-#define IDS_COMMAND_REM                        1037
-#define IDS_COMMAND_REMOVE                     1038
-#define IDS_COMMAND_REPAIR                     1039
-#define IDS_COMMAND_RESCAN                     1040
-#define IDS_COMMAND_RETAIN                     1041
-#define IDS_COMMAND_SAN                        1042
-#define IDS_COMMAND_SELECT_DISK                1043
-#define IDS_COMMAND_SELECT_PARTITION           1044
-#define IDS_COMMAND_SELECT_VOLUME              1045
-#define IDS_COMMAND_SELECT_VDISK               1046
-#define IDS_COMMAND_SETID                      1047
-#define IDS_COMMAND_SHRINK                     1048
-#define IDS_COMMAND_UNIQUEID_DISK              1049
+#define IDS_COMMAND_DELETE_DISK                1015
+#define IDS_COMMAND_DELETE_PARTITION           1016
+#define IDS_COMMAND_DELETE_VOLUME              1017
+#define IDS_COMMAND_DETACH                     1018
+#define IDS_COMMAND_DETAIL_DISK                1019
+#define IDS_COMMAND_DETAIL_PARTITION           1020
+#define IDS_COMMAND_DETAIL_VOLUME              1021
+#define IDS_COMMAND_EXIT                       1022
+#define IDS_COMMAND_EXPAND                     1023
+#define IDS_COMMAND_EXTEND                     1024
+#define IDS_COMMAND_FILESYSTEMS                1025
+#define IDS_COMMAND_FORMAT                     1026
+#define IDS_COMMAND_GPT                        1027
+#define IDS_COMMAND_HELP                       1028
+#define IDS_COMMAND_IMPORT                     1029
+#define IDS_COMMAND_INACTIVE                   1030
+#define IDS_COMMAND_LIST_DISK                  1031
+#define IDS_COMMAND_LIST_PARTITION             1032
+#define IDS_COMMAND_LIST_VOLUME                1033
+#define IDS_COMMAND_LIST_VDISK                 1034
+#define IDS_COMMAND_MERGE                      1035
+#define IDS_COMMAND_ONLINE                     1036
+#define IDS_COMMAND_OFFLINE                    1037
+#define IDS_COMMAND_RECOVER                    1038
+#define IDS_COMMAND_REM                        1039
+#define IDS_COMMAND_REMOVE                     1040
+#define IDS_COMMAND_REPAIR                     1041
+#define IDS_COMMAND_RESCAN                     1042
+#define IDS_COMMAND_RETAIN                     1043
+#define IDS_COMMAND_SAN                        1044
+#define IDS_COMMAND_SELECT_DISK                1045
+#define IDS_COMMAND_SELECT_PARTITION           1046
+#define IDS_COMMAND_SELECT_VOLUME              1047
+#define IDS_COMMAND_SELECT_VDISK               1048
+#define IDS_COMMAND_SETID                      1049
+#define IDS_COMMAND_SHRINK                     1050
+#define IDS_COMMAND_UNIQUEID_DISK              1051
 
 #define IDS_ERROR_MSG_NO_SCRIPT  2000
 #define IDS_ERROR_MSG_BAD_ARG    2001

Reply via email to