You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
66 lines
1.4 KiB
66 lines
1.4 KiB
//
|
|
|
|
// Copyright (c) 1997-2001 Microsoft Corporation, All Rights Reserved
|
|
//
|
|
// ***************************************************************************
|
|
//
|
|
// Original Author: Rajesh Rao
|
|
//
|
|
// $Author: rajeshr $
|
|
// $Date: 6/11/98 4:43p $
|
|
// $Workfile:clasname.h $
|
|
//
|
|
// $Modtime: 6/11/98 11:21a $
|
|
// $Revision: 1 $
|
|
// $Nokeywords: $
|
|
//
|
|
//
|
|
// Description: Contains the declaration for a list of class names. This user
|
|
// the templates from SNMPProvider\Common
|
|
//***************************************************************************
|
|
/////////////////////////////////////////////////////////////////////////
|
|
|
|
#ifndef NAME_LIST_H
|
|
#define NAME_LIST_H
|
|
|
|
// Need to encapsulate LPWSTR to avoid conversion to CString
|
|
|
|
class CLPWSTR
|
|
{
|
|
public :
|
|
LPWSTR pszVal;
|
|
DWORD dwImpersonationLevel;
|
|
CLPWSTR * pNext;
|
|
|
|
CLPWSTR()
|
|
{
|
|
pszVal = NULL;
|
|
pNext = NULL;
|
|
}
|
|
|
|
~CLPWSTR()
|
|
{
|
|
delete [] pszVal;
|
|
}
|
|
};
|
|
|
|
class CNamesList
|
|
{
|
|
|
|
private:
|
|
CRITICAL_SECTION m_AccessibleClassesSection;
|
|
CLPWSTR *m_pListOfClassNames;
|
|
DWORD m_dwElementCount;
|
|
HRESULT GetImpersonationLevel(DWORD *pdwImpLevel);
|
|
|
|
public:
|
|
CNamesList();
|
|
virtual ~CNamesList();
|
|
BOOLEAN IsNamePresent(LPCWSTR pszClassName);
|
|
BOOLEAN RemoveName(LPCWSTR pszClassName);
|
|
BOOLEAN AddName(LPCWSTR pszClassName);
|
|
DWORD GetAllNames(LPWSTR **ppszNames);
|
|
|
|
};
|
|
|
|
#endif /*NAME_LIST_H*/
|