Source code of Windows XP (NT5)
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.
|
|
//+-------------------------------------------------------------------------
//
// Microsoft Windows
//
// Copyright (C) Microsoft Corporation, 1996 - 1999
//
// File: pagebase.h
//
// This file contains the definition of the CSecurityPage base class
//
//--------------------------------------------------------------------------
#ifndef _PAGEBASE_H_
#define _PAGEBASE_H_
class CSecurityPage { protected: SI_PAGE_TYPE m_siPageType; LPSECURITYINFO m_psi; LPSECURITYINFO2 m_psi2; LPEFFECTIVEPERMISSION m_pei; LPSecurityObjectTypeInfo m_psoti; HRESULT m_hrComInit; IDsObjectPicker *m_pObjectPicker; SI_OBJECT_INFO m_siObjectInfo; DWORD m_flLastOPOptions; BOOL m_bStandalone; BOOL m_bAbortPage; HRESULT m_hrLastPSPCallbackResult;
public: CSecurityPage( LPSECURITYINFO psi, SI_PAGE_TYPE siType ); virtual ~CSecurityPage( void );
HPROPSHEETPAGE CreatePropSheetPage(LPCTSTR pszDlgTemplate, LPCTSTR pszDlgTitle = NULL); HRESULT GetObjectPicker(IDsObjectPicker **ppObjectPicker = NULL); HRESULT GetUserGroup(HWND hDlg, BOOL bMultiSelect, PUSER_LIST *ppUserList); BOOL IsEffective(){ return (m_pei != NULL) ;}
protected: #if(_WIN32_WINNT >= 0x0500)
HRESULT InitObjectPicker(BOOL bMultiSelect); #endif
virtual BOOL DlgProc(HWND, UINT, WPARAM, LPARAM) = 0; virtual UINT PSPageCallback(HWND hwnd, UINT uMsg, LPPROPSHEETPAGE ppsp);
static INT_PTR CALLBACK _DlgProc( HWND hDlg, UINT uMsg, WPARAM wParam, LPARAM lParam); static UINT CALLBACK _PSPageCallback(HWND hwnd, UINT uMsg, LPPROPSHEETPAGE ppsp); };
typedef class CSecurityPage *LPSECURITYPAGE;
#endif /* _PAGEBASE_H_ */
|