119 lines
2.8 KiB
C++
119 lines
2.8 KiB
C++
/**********************************************************************/
|
|
/** Microsoft Windows/NT **/
|
|
/** Copyright(c) Microsoft Corporation, 1997 - 1998 **/
|
|
/**********************************************************************/
|
|
|
|
/*
|
|
AcsUser.h
|
|
Defines the ACS User object extension
|
|
|
|
FILE HISTORY:
|
|
11/03/97 Wei Jiang Created
|
|
|
|
*/
|
|
// ACSUser.h : Declaration of the CACSUser
|
|
|
|
#ifndef __ACSUSER_H_
|
|
#define __ACSUSER_H_
|
|
|
|
#include "resource.h" // main symbols
|
|
#include "helper.h"
|
|
#include "acsdata.h"
|
|
#include "acs.h"
|
|
|
|
#define ByteOffset(base, offset) (((LPBYTE)base)+offset)
|
|
|
|
#if 0 // user page is removed
|
|
class CACSUserPg;
|
|
|
|
/////////////////////////////////////////////////////////////////////////////
|
|
// CACSUser
|
|
class ATL_NO_VTABLE CACSUser :
|
|
public CComObjectRootEx<CComSingleThreadModel>,
|
|
public CComCoClass<CACSUser, &CLSID_ACSUser>,
|
|
public IShellExtInit,
|
|
public IShellPropSheetExt
|
|
{
|
|
public:
|
|
CACSUser();
|
|
virtual ~CACSUser();
|
|
|
|
BEGIN_COM_MAP(CACSUser)
|
|
COM_INTERFACE_ENTRY(IShellExtInit)
|
|
COM_INTERFACE_ENTRY(IShellPropSheetExt)
|
|
END_COM_MAP()
|
|
|
|
public:
|
|
//IShellExtInit methods
|
|
STDMETHODIMP Initialize(LPCITEMIDLIST pIDFolder, LPDATAOBJECT pDataObj, HKEY hKeyID);
|
|
|
|
//IShellPropSheetExt methods
|
|
STDMETHODIMP AddPages(LPFNADDPROPSHEETPAGE lpfnAddPage, LPARAM lParam);
|
|
STDMETHODIMP ReplacePage(UINT uPageID, LPFNADDPROPSHEETPAGE lpfnReplaceWith, LPARAM lParam);
|
|
|
|
DECLARE_REGISTRY(CACSUser, _T("ACSUser.UserAdminExt.1"), _T("ACSUser.UserAdminExt"), 0, THREADFLAGS_APARTMENT)
|
|
virtual const CLSID & GetCoClassID(){ return CLSID_ACSUser; }
|
|
|
|
protected:
|
|
LPWSTR m_pwszObjName;
|
|
LPWSTR m_pwszClass;
|
|
CACSUserPg* m_pPage;
|
|
STGMEDIUM m_ObjMedium;
|
|
BOOL m_bShowPage;
|
|
};
|
|
|
|
|
|
/////////////////////////////////////////////////////////////////////////////
|
|
// CACSUserPg dialog
|
|
|
|
class CACSUserPg : public CACSPage
|
|
{
|
|
DECLARE_DYNCREATE(CACSUserPg)
|
|
|
|
// Construction
|
|
public:
|
|
HRESULT Save();
|
|
HRESULT Load(LPCWSTR userPath);
|
|
CACSUserPg();
|
|
~CACSUserPg();
|
|
|
|
// Dialog Data
|
|
//{{AFX_DATA(CACSUserPg)
|
|
enum { IDD = IDD_ACSUSER };
|
|
CString m_strProfileName;
|
|
//}}AFX_DATA
|
|
|
|
|
|
// Overrides
|
|
// ClassWizard generate virtual function overrides
|
|
//{{AFX_VIRTUAL(CACSUserPg)
|
|
public:
|
|
virtual BOOL OnApply();
|
|
protected:
|
|
virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV support
|
|
//}}AFX_VIRTUAL
|
|
|
|
// Implementation
|
|
protected:
|
|
CStrArray m_strArrayPolicyNames;
|
|
CComPtr<IADs> m_spIADs;
|
|
CStrArray m_GlobalProfileNames;
|
|
// Generated message map functions
|
|
//{{AFX_MSG(CACSUserPg)
|
|
virtual BOOL OnInitDialog();
|
|
afx_msg void OnEditchangeCombouserprofilename();
|
|
afx_msg void OnSelchangeCombouserprofilename();
|
|
//}}AFX_MSG
|
|
DECLARE_MESSAGE_MAP()
|
|
|
|
CComPtr<CACSGlobalProfiles> m_spGlobalProfiles;
|
|
CStrBox<CComboBox>* m_pBox;
|
|
};
|
|
|
|
|
|
#endif // #if 0
|
|
|
|
#endif //__ACSUSER_H_
|
|
|
|
//////////////
|