[NETSH] Simplify the code by naming the root context 'netsh'

-
This commit is contained in:
Eric Kohl
2025-09-14 22:14:21 +02:00
parent 20d7fd78ae
commit 245bc3f44a
5 changed files with 15 additions and 18 deletions

View File

@@ -436,7 +436,7 @@ CreateRootContext(VOID)
{
PCOMMAND_GROUP pGroup;
pRootContext = AddContext(NULL, NULL, NULL);
pRootContext = AddContext(NULL, L"netsh", NULL);
DPRINT("pRootContext: %p\n", pRootContext);
if (pRootContext == NULL)
return FALSE;

View File

@@ -21,7 +21,7 @@ GetContextFullName(
_Inout_ LPWSTR pszBuffer,
_In_ DWORD cchLength)
{
if (pContext->pParentContext != NULL)
if (pContext != pRootContext)
{
GetContextFullName(pContext->pParentContext, pszBuffer, cchLength);
wcscat(pszBuffer, L" ");
@@ -29,7 +29,7 @@ GetContextFullName(
}
else
{
wcscpy(pszBuffer, L"netsh");
wcscpy(pszBuffer, pContext->pszContextName);
}
}
@@ -43,16 +43,12 @@ PrintCurrentContextHeader(
if (pContext == pCurrentContext)
{
ConPrintf(StdOut, L"\nCommands in this context:\n");
}
else if (pContext == pRootContext)
{
ConPrintf(StdOut, L"\nCommands in the netsh-context:\n");
ConResPrintf(StdOut, IDS_THIS_COMMANDS);
}
else
{
GetContextFullName(pContext, szBuffer, 80);
ConPrintf(StdOut, L"\nCommands in the %s-context:\n", szBuffer);
ConResPrintf(StdOut, IDS_CONTEXT_COMMANDS, szBuffer);
}
}

View File

@@ -224,16 +224,13 @@ VOID
PrintPrompt(
PCONTEXT_ENTRY pContext)
{
if (pContext == pRootContext)
{
ConPuts(StdOut, L"netsh");
}
else
if (pContext != pRootContext)
{
PrintPrompt(pContext->pParentContext);
ConPuts(StdOut, L" ");
ConPuts(StdOut, pContext->pszContextName);
}
ConPuts(StdOut, pContext->pszContextName);
}

View File

@@ -12,9 +12,11 @@ STRINGTABLE
BEGIN
IDS_APP_USAGE "\nUsage: netsh [-a AliasFile] [-c Context] [-r RemoteMachine] \
\n [Command | -f ScriptFile]\n"
IDS_INVALID_COMMAND "The following command was not found: %ls.\n"
IDS_OPEN_FAILED "The file %ls could not be openend.\n"
IDS_INVALID_SYNTAX "The syntax supplied for this command is not valid. Check help for the correct syntax.\n\n"
IDS_INVALID_COMMAND "The following command was not found: %ls.\n"
IDS_OPEN_FAILED "The file %ls could not be openend.\n"
IDS_INVALID_SYNTAX "The syntax supplied for this command is not valid. Check help for the correct syntax.\n\n"
IDS_THIS_COMMANDS "\nCommands in this context:\n"
IDS_CONTEXT_COMMANDS "\nCommands in the %s-context:\n"
END
STRINGTABLE

View File

@@ -14,6 +14,8 @@
#define IDS_INVALID_COMMAND 102
#define IDS_OPEN_FAILED 103
#define IDS_INVALID_SYNTAX 104
#define IDS_THIS_COMMANDS 105
#define IDS_CONTEXT_COMMANDS 106
#define IDS_HELP_HEADER 200
#define IDS_HELP_FOOTER 201