ReactOS 0.4.17-dev-940-g8bd6e85
CSnapin.h
Go to the documentation of this file.
1/*
2 * PROJECT: ReactOS Management Console
3 * LICENSE: GPL-2.0+ (https://spdx.org/licenses/GPL-2.0+)
4 * PURPOSE: Retrieve / store information about a snapin
5 * COPYRIGHT: Copyright 2017-2019 Mark Jansen (mark.jansen@reactos.org)
6 * Copyright 2026 Eric Kohl (eric.kohl@reactos.org)
7 */
8
9#pragma once
10
11
12// https://web.archive.org/web/20010614160959/msdn.microsoft.com/library/psdk/mmc/mmc12apx02_8jc5.htm
13// https://msdn.microsoft.com/en-us/library/aa814846(v=vs.85).aspx
14
15
16// https://msdn.microsoft.com/en-us/library/aa815510(v=vs.85).aspx
17// MMC initializes a snap-in by calling the Initialize method of the IComponentData object.
18// During initialization, IComponentData should query the console for its IConsoleNamespace and IConsole interfaces using
19// the console's IUnknown interface pointer that is passed into the call to Initialize.
20// The snap-in should then cache the returned pointers and use them for calling IConsoleNamespace and IConsole interface methods.
21
22
24{
25private:
27 CAtlString m_DisplayName;
28
29 void RemoveAllSubnodes();
30
31
32public:
34 ~CSnapin();
35
36 const CAtlString& Name() const;
37 const CAtlString& Provider() const;
38 const CAtlString& Description() const;
39 const CAtlString& Version() const;
40 const CAtlString& DisplayName() const;
41
42 CAtlList<CSnapin*> m_SubNodes;
43
45
46 void OnAdd(IConsole* console);
47 void OnAccept(IConsole* console);
48
49 VOID SaveNode(MscFile *mscFile, IXMLDOMElement *pParentNode);
50};
void OnAccept(IConsole *console)
Definition: CSnapin.cpp:76
~CSnapin()
Definition: CSnapin.cpp:31
void OnAdd(IConsole *console)
Definition: CSnapin.cpp:62
CAtlString m_DisplayName
Definition: CSnapin.h:27
CSnapinCacheEntry * CacheEntry()
Definition: CSnapin.cpp:42
const CAtlString & Name() const
Definition: CSnapin.cpp:36
const CAtlString & Provider() const
Definition: CSnapin.cpp:37
const CAtlString & DisplayName() const
Definition: CSnapin.cpp:40
CSnapinCacheEntry * m_CacheEntry
Definition: CSnapin.h:26
VOID SaveNode(MscFile *mscFile, IXMLDOMElement *pParentNode)
Definition: CSnapin.cpp:110
void RemoveAllSubnodes()
Definition: CSnapin.cpp:48
const CAtlString & Description() const
Definition: CSnapin.cpp:38
CAtlList< CSnapin * > m_SubNodes
Definition: CSnapin.h:42
const CAtlString & Version() const
Definition: CSnapin.cpp:39
#define NULL
Definition: types.h:112
char displayName[]
Definition: tftpd.cpp:35
uint16_t * PWSTR
Definition: typedefs.h:56