Leaked source code of windows server 2003
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.
 
 
 
 
 
 

134 lines
3.9 KiB

//+---------------------------------------------------------------------------
//
// Microsoft Windows
// Copyright (C) Microsoft Corporation, 1997-2002.
//
// File: SnapMgr.h
//
// Contents: header file for Snapin Manager property page
//
//----------------------------------------------------------------------------
#ifndef __SNAPMGR_H__
#define __SNAPMGR_H__
#endif // ~__SNAPMGR_H__
/////////////////////////////////////////////////////////////////////////////
// CCertMgrChooseMachinePropPage dialog
class CCertMgrChooseMachinePropPage : public CChooseMachinePropPage
{
// Construction
public:
CCertMgrChooseMachinePropPage();
virtual ~CCertMgrChooseMachinePropPage();
void AssignLocationPtr (DWORD* pdwLocation);
// Dialog Data
//{{AFX_DATA(CCertMgrChooseMachinePropPage)
// NOTE - ClassWizard will add data members here.
// DO NOT EDIT what you see in these blocks of generated code !
//}}AFX_DATA
// Overrides
// ClassWizard generate virtual function overrides
//{{AFX_VIRTUAL(CCertMgrChooseMachinePropPage)
public:
virtual BOOL OnSetActive();
protected:
virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV support
//}}AFX_VIRTUAL
// Implementation
protected:
// Generated message map functions
//{{AFX_MSG(CCertMgrChooseMachinePropPage)
//}}AFX_MSG
DECLARE_MESSAGE_MAP()
virtual LRESULT OnWizardNext();
virtual BOOL OnKillActive();
private:
DWORD* m_pdwLocation;
};
/////////////////////////////////////////////////////////////////////////////
// CCertMgrChooseMachinePropPage property page
CCertMgrChooseMachinePropPage::CCertMgrChooseMachinePropPage() :
CChooseMachinePropPage(),
m_pdwLocation (0)
{
//{{AFX_DATA_INIT(CCertMgrChooseMachinePropPage)
// NOTE: the ClassWizard will add member initialization here
//}}AFX_DATA_INIT
}
CCertMgrChooseMachinePropPage::~CCertMgrChooseMachinePropPage()
{
}
void CCertMgrChooseMachinePropPage::AssignLocationPtr(DWORD * pdwLocation)
{
m_pdwLocation = pdwLocation;
}
void CCertMgrChooseMachinePropPage::DoDataExchange(CDataExchange* pDX)
{
CChooseMachinePropPage::DoDataExchange(pDX);
//{{AFX_DATA_MAP(CCertMgrChooseMachinePropPage)
// NOTE: the ClassWizard will add DDX and DDV calls here
//}}AFX_DATA_MAP
}
BEGIN_MESSAGE_MAP(CCertMgrChooseMachinePropPage, CChooseMachinePropPage)
//{{AFX_MSG_MAP(CCertMgrChooseMachinePropPage)
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
/////////////////////////////////////////////////////////////////////////////
// CCertMgrChooseMachinePropPage message handlers
BOOL CCertMgrChooseMachinePropPage::OnSetActive()
{
if ( m_pdwLocation && CERT_SYSTEM_STORE_SERVICES == *m_pdwLocation )
GetParent ()->PostMessage (PSM_SETWIZBUTTONS, 0, PSWIZB_BACK | PSWIZB_NEXT);
else
GetParent ()->PostMessage (PSM_SETWIZBUTTONS, 0, PSWIZB_BACK | PSWIZB_FINISH);
// Do not call CChooseMachinePropPage here because it will disable the back button.
// Call the grandparent instead.
return CPropertyPage::OnSetActive();
}
BOOL CCertMgrChooseMachinePropPage::OnKillActive()
{
ASSERT_VALID(this);
// override CPropertyPage::OnKillActive () so that UpdateData is not called
return TRUE;
}
LRESULT CCertMgrChooseMachinePropPage::OnWizardNext()
{
if ( !UpdateData (TRUE) )
return -1;
if ( m_pstrMachineNameOut )
{
// Store the machine name into its output buffer
// NTRAID# 487794 Certificates/Service account: cannot add snapin
// targeted to local computer if illegal chars present in "Another
// computer" textbox
if ( m_fIsRadioLocalMachine )
*m_pstrMachineNameOut = L"";
else
*m_pstrMachineNameOut = m_strMachineName;
if (m_pfAllowOverrideMachineNameOut != NULL)
*m_pfAllowOverrideMachineNameOut = m_fAllowOverrideMachineName;
}
return CChooseMachinePropPage::OnWizardNext ();
}