CMD_GROUP_ENTRY構造体は、ヘルパー コマンドのグループを定義します。
構文
typedef struct _CMD_GROUP_ENTRY {
LPCWSTR pwszCmdGroupToken;
DWORD dwShortCmdHelpToken;
ULONG ulCmdGroupSize;
DWORD dwFlags;
PCMD_ENTRY pCmdGroup;
PNS_OSVERSIONCHECK pOsVersionCheck;
} CMD_GROUP_ENTRY, *PCMD_GROUP_ENTRY;
メンバー
pwszCmdGroupToken
コマンド グループのトークン (名前)
dwShortCmdHelpToken
短いヘルプ メッセージ。
ulCmdGroupSize
コマンド グループ内の要素の数。
dwFlags
フラグ。 詳細については、「 NetShell フラグ」を参照してください。
pCmdGroup
CMD_ENTRY構造体の配列。
pOsVersionCheck
オペレーティング システムのバージョンチェック関数。 これは、コマンドを呼び出すか表示する前に、ローカル コンテキストまたはリモート コンテキストで実行されているオペレーティング システムでコマンドを実行できるかどうかを判断するために使用される関数です。 詳細については、「 NS_OSVERSIONCHECK」を参照してください。
注釈
次のように、 CMD_GROUP_ENTRY 構造の作成を簡略化できるマクロを使用できます。
#define CREATE_CMD_GROUP_ENTRY_EX(t,s,i) {CMD_##t, HLP_##t, sizeof(s)/sizeof(CMD_ENTRY), i, s, NULL }
#define CREATE_CMD_GROUP_ENTRY_EX_VER(t,s,i,v) {CMD_##t, HLP_##t, sizeof(s)/sizeof(CMD_ENTRY), i, s, v }
#define CREATE_CMD_GROUP_ENTRY(t,s) {CMD_##t, HLP_##t, sizeof(s)/sizeof(CMD_ENTRY), 0, s, NULL }
これらのマクロを使用する場合は、ヘルパー DLL で次の定数を定義する必要があります。
これらのマクロの使用例を次に示します。
#define HLP_GROUP_ADD 1100
#define HLP_GROUP_ADD_EX 1101
#define HLP_GROUP_DELETE 1102
#define HLP_GROUP_DELETE_EX 1103
#define HLP_GROUP_SET 1104
#define HLP_GROUP_SET_EX 1105
#define HLP_GROUP_SHOW 1106
#define HLP_GROUP_SHOW_EX 1107
#define CMD_GROUP_ADD L"add"
#define CMD_GROUP_DELETE L"delete"
#define CMD_GROUP_SET L"set"
#define CMD_GROUP_SHOW L"show"
static CMD_GROUP_ENTRY g_SampleGroupCmds[] =
{
CREATE_CMD_GROUP_ENTRY(GROUP_ADD, g_SampleAddCmdTable),
CREATE_CMD_GROUP_ENTRY(GROUP_DELETE, g_SampleDeleteCmdTable),
CREATE_CMD_GROUP_ENTRY(GROUP_SET, g_SampleSetCmdTable),
CREATE_CMD_GROUP_ENTRY(GROUP_SHOW, g_SampleShowCmdTable),
};
要件
| 要件 | 値 |
|---|---|
| サポートされている最小のクライアント | Windows XP (デスクトップ アプリのみ) |
| サポートされている最小のサーバー | Windows Server 2003 (デスクトップ アプリのみ) |
| Header | netsh.h |