15#define HUGE_HELP_BUFFER_SIZE 2048
16#define SMALL_HELP_BUFFER_SIZE 160
17#define TINY_HELP_BUFFER_SIZE 80
53 wcscat(pszBuffer, pContext->pszContextName);
57 wcscpy(pszBuffer, pContext->pszContextName);
90 for (pCommand = pGroup->pCommandListHead; pCommand !=
NULL; pCommand = pCommand->
pNext)
92 DPRINT(
"CheckVersion (Command) %S %S", pGroup->pwszCmdGroupToken, pCommand->
pwszCmdToken);
128 DWORD dwCount = 0, dwIndex;
131 DPRINT(
"PrintContext()\n");
139 for (pCommand = pContext->pCommandListHead; pCommand !=
NULL; pCommand = pCommand->
pNext)
153 for (pGroup = pContext->pGroupListHead; pGroup !=
NULL; pGroup = pGroup->
pNext)
181 if (pHelpArray ==
NULL)
187 for (pCommand = pContext->pCommandListHead; pCommand !=
NULL; pCommand = pCommand->
pNext)
205 for (pGroup = pContext->pGroupListHead; pGroup !=
NULL; pGroup = pGroup->
pNext)
241 for (dwIndex = 0; dwIndex < dwCount; dwIndex++)
243 switch (pHelpArray[dwIndex].
Type)
259 ConPrintf(
StdOut,
L"%-15s - Changes to the \"%s\" context.\n", pHelpArray[dwIndex].pszCommand, szBuffer);
285 DWORD dwCount, dwIndex;
287 if (pContext->pSubContextHead ==
NULL)
305 if (pSubContextArray ==
NULL)
319 pSubContextArray[dwIndex] = pSubContext;
326 for (dwIndex = 0; dwIndex < dwCount; dwIndex++)
346 DPRINT(
"PrintCommandHelp(%p %p %p)\n", pContext, pGroup, pCommand);
361 if (pszCommandBuffer ==
NULL)
365 (pGroup) ? pGroup->pwszCmdGroupToken :
L"",
366 (pGroup) ?
L" " :
L"",
367 pCommand->pwszCmdToken);
375 pCommand->dwCmdHlpToken,
398 pGroup = pContext->pGroupListHead;
399 while (pGroup !=
NULL)
406 pGroup = pGroup->
pNext;
PCONTEXT_ENTRY pRootContext
PCONTEXT_ENTRY pCurrentContext
static VOID PrintShortGroupCommands(_In_ PCONTEXT_ENTRY pContext, _In_ PCOMMAND_GROUP pGroup)
VOID PrintCommandHelp(_In_ PCONTEXT_ENTRY pContext, _In_ PCOMMAND_GROUP pGroup, _In_ PCOMMAND_ENTRY pCommand)
static int HelpCompare(_In_ const void *p1, _In_ const void *p2)
static VOID PrintSubcontexts(_In_ PCONTEXT_ENTRY pContext)
static VOID PrintCurrentContextHeader(_In_ PCONTEXT_ENTRY pContext)
struct HELP_ENTRY * PHELP_ENTRY
enum HELP_TYPE * PHELP_TYPE
static VOID GetContextFullName(_In_ PCONTEXT_ENTRY pContext, _Inout_ LPWSTR pszBuffer, _In_ DWORD cchLength)
static int SubContextCompare(_In_ const void *p1, _In_ const void *p2)
#define SMALL_HELP_BUFFER_SIZE
static VOID PrintContext(_In_ PCONTEXT_ENTRY pContext)
#define TINY_HELP_BUFFER_SIZE
VOID PrintGroupHelp(_In_ PCONTEXT_ENTRY pContext, _In_ LPWSTR pszGroupName, _In_ BOOL bRecurse)
VOID PrintContextHelp(_In_ PCONTEXT_ENTRY pContext)
BOOL CheckOsVersion(_In_ PNS_OSVERSIONCHECK pfnOsVersionCheck)
#define IDS_CONTEXT_COMMANDS
#define IDS_THIS_COMMANDS
#define IDS_SUBCONTEXT_HEADER
void ConPuts(FILE *fp, LPCWSTR psz)
void ConPrintf(FILE *fp, LPCWSTR psz,...)
void ConResPrintf(FILE *fp, UINT nID,...)
#define HeapFree(x, y, z)
static DWORD DWORD * dwLength
_ACRTIMP int __cdecl _wcsicmp(const wchar_t *, const wchar_t *)
_ACRTIMP size_t __cdecl wcslen(const wchar_t *)
_ACRTIMP void __cdecl qsort(void *, size_t, size_t, int(__cdecl *)(const void *, const void *))
#define _swprintf(buf, format,...)
INT ConResMsgPrintfExV(IN PCON_STREAM Stream, IN HINSTANCE hInstance OPTIONAL, IN DWORD dwFlags, IN UINT uID, IN LANGID LanguageId, IN va_list *Arguments OPTIONAL)
union HELP_ENTRY::@19 Pointer
PCONTEXT_ENTRY pSubContext
PNS_OSVERSIONCHECK pfnOsVersionCheck
DWORD dwShortCmdHelpToken
struct _COMMAND_ENTRY * pNext
PNS_OSVERSIONCHECK pfnOsVersionCheck
struct _COMMAND_GROUP * pNext
DWORD dwShortCmdHelpToken
struct _CONTEXT_ENTRY * pSubContextHead
struct _CONTEXT_ENTRY * pNext
PNS_OSVERSIONCHECK pfnOsVersionCheck
#define LANG_USER_DEFAULT
#define FORMAT_MESSAGE_ARGUMENT_ARRAY