//+--------------------------------------------------------------------------- // // Microsoft Windows // Copyright (C) Microsoft Corporation, 1997-2001. // // File: complete.cpp // // Contents: // //---------------------------------------------------------------------------- #include "stdafx.h" #include "Complete.h" #include "AddSheet.h" #ifdef _DEBUG #ifndef ALPHA #define new DEBUG_NEW #endif #undef THIS_FILE static char THIS_FILE[] = __FILE__; #endif ///////////////////////////////////////////////////////////////////////////// // CAddEFSWizComplete property page CAddEFSWizComplete::CAddEFSWizComplete() : CWizard97PropertyPage(CAddEFSWizComplete::IDD) { //{{AFX_DATA_INIT(CAddEFSWizComplete) // NOTE: the ClassWizard will add member initialization here //}}AFX_DATA_INIT InitWizard97 (TRUE); } CAddEFSWizComplete::~CAddEFSWizComplete() { } void CAddEFSWizComplete::DoDataExchange(CDataExchange* pDX) { CWizard97PropertyPage::DoDataExchange(pDX); //{{AFX_DATA_MAP(CAddEFSWizComplete) DDX_Control(pDX, IDC_BIGBOLD, m_bigBoldStatic); DDX_Control(pDX, IDC_ADDLIST, m_UserAddList); //}}AFX_DATA_MAP } BEGIN_MESSAGE_MAP(CAddEFSWizComplete, CWizard97PropertyPage) //{{AFX_MSG_MAP(CAddEFSWizComplete) //}}AFX_MSG_MAP END_MESSAGE_MAP() ///////////////////////////////////////////////////////////////////////////// // CAddEFSWizComplete message handlers BOOL CAddEFSWizComplete::OnSetActive() { BOOL bResult = CWizard97PropertyPage::OnSetActive (); if ( bResult ) { GetParent ()->PostMessage (PSM_SETWIZBUTTONS, 0, PSWIZB_FINISH | PSWIZB_BACK); SetUserList(); } return bResult; } void CAddEFSWizComplete::SetUserList() { CAddEFSWizSheet* pAddSheet = reinterpret_cast (m_pWiz); ASSERT (pAddSheet); if ( !pAddSheet ) return; PUSERSONFILE Token = NULL; CString UserName; CString DnName; try { CString UnKnownUser; CString NoCertName; VERIFY (UnKnownUser.LoadString(IDS_UNKNOWNUSER)); VERIFY (NoCertName.LoadString(IDS_NOCERTNAME)); Token = pAddSheet->StartEnum(); while (Token) { Token = pAddSheet->GetNextUser(Token, UserName, DnName); if ( (!UserName.IsEmpty()) || (!DnName.IsEmpty())) { LV_ITEM fillItem; fillItem.mask = LVIF_TEXT; fillItem.iItem = 0; fillItem.iSubItem = 0; if (UserName.IsEmpty()) { fillItem.pszText = UnKnownUser.GetBuffer(UnKnownUser.GetLength() + 1); } else { fillItem.pszText = UserName.GetBuffer(UserName.GetLength() + 1); } fillItem.iItem = m_UserAddList.InsertItem(&fillItem); if (UserName.IsEmpty()) { UnKnownUser.ReleaseBuffer(); } else { UserName.ReleaseBuffer(); } if (fillItem.iItem != -1 ) { fillItem.iSubItem = 1; if (DnName.IsEmpty()) { fillItem.pszText = NoCertName.GetBuffer(NoCertName.GetLength() + 1); } else { fillItem.pszText = DnName.GetBuffer(DnName.GetLength() + 1); } m_UserAddList.SetItem(&fillItem); if (DnName.IsEmpty()) { NoCertName.ReleaseBuffer(); } else { DnName.ReleaseBuffer(); } } } } } catch(...){ m_UserAddList.DeleteAllItems( ); } } LRESULT CAddEFSWizComplete::OnWizardBack() { m_UserAddList.DeleteAllItems( ); return CWizard97PropertyPage::OnWizardBack(); } BOOL CAddEFSWizComplete::OnWizardFinish() { CAddEFSWizSheet* pAddSheet = reinterpret_cast (m_pWiz); ASSERT (pAddSheet); if ( !pAddSheet ) return FALSE; pAddSheet->AddNewUsers(); return CWizard97PropertyPage::OnWizardFinish(); } BOOL CAddEFSWizComplete::OnInitDialog() { CWizard97PropertyPage::OnInitDialog(); m_bigBoldStatic.SetFont (&GetBigBoldFont ()); CString UserNameTitle; CString UserDnTitle; RECT ListRect; DWORD ColWidth = 0; try { m_UserAddList.GetClientRect(&ListRect); ColWidth = (ListRect.right - ListRect.left)/2; VERIFY (UserNameTitle.LoadString(IDS_USERCOLTITLE)); VERIFY (UserDnTitle.LoadString(IDS_DNCOLTITLE)); m_UserAddList.InsertColumn(0, UserNameTitle, LVCFMT_LEFT, ColWidth ); m_UserAddList.InsertColumn(1, UserDnTitle, LVCFMT_LEFT, ColWidth ); } catch (...){ } DWORD color = GetSysColor (COLOR_WINDOW); VERIFY (m_UserAddList.SetBkColor (color)); return TRUE; // return TRUE unless you set the focus to a control // EXCEPTION: OCX Property Pages should return FALSE }