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.
|
|
/******************************************************************************
Copyright (c) 1999 Microsoft Corporation
Module Name: htmlui2.cpp
Abstract: This file contains the implementation of the CRestorePointInfo class, which is scriptable object for restore point information.
Revision History: Seong Kook Khang (SKKhang) 06/21/99 created Seong Kook Khang (SKKhang) 05/19/00 Renamed from rpdata.cpp to htmlui2.cpp. Brought CRenamedFolders class from logfile.cpp.
******************************************************************************/
#include "stdwin.h"
#include "stdatl.h"
#include "resource.h"
#include "rstrpriv.h"
#include "srui_htm.h"
#include "rstrmgr.h"
#include "rstrshl.h"
/////////////////////////////////////////////////////////////////////////////
//
// CRestorePointInfo class
//
/////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////
// CRestorePointInfo construction
//#define COUNT_RPT 13
//#define SIZE_RPT_STR 256
CRestorePointInfo::CRestorePointInfo() { }
STDMETHODIMP CRestorePointInfo::HrInit( SRestorePointInfo *pRPI ) { TraceFunctEnter("CRestorePointInfo::HrInit"); m_pRPI = pRPI; { LPCWSTR cszName = pRPI->strName; DebugTrace(TRACE_ID, "RP: '%ls'", cszName); } TraceFunctLeave(); return( S_OK ); }
/////////////////////////////////////////////////////////////////////////////
// CRestorePointInfo - IRestorePoint methods
STDMETHODIMP CRestorePointInfo::get_Name( BSTR *pbstrName ) { TraceFunctEnter("CRestorePointInfo::get_Name"); HRESULT hr = S_OK;
VALIDATE_INPUT_ARGUMENT(pbstrName); ALLOCATEBSTR_AND_CHECK_ERROR( pbstrName, m_pRPI->strName );
Exit: TraceFunctLeave(); return( hr ); }
STDMETHODIMP CRestorePointInfo::get_Type( INT *pnType ) { TraceFunctEnter("CRestorePointInfo::get_Type"); HRESULT hr = S_OK;
VALIDATE_INPUT_ARGUMENT(pnType); *pnType = (INT)m_pRPI->dwType;
Exit: TraceFunctLeave(); return( hr ); }
STDMETHODIMP CRestorePointInfo::get_SequenceNumber( INT *pnSeq ) { TraceFunctEnter("CRestorePointInfo::get_SquenceNumber"); HRESULT hr = S_OK;
VALIDATE_INPUT_ARGUMENT(pnSeq); *pnSeq = m_pRPI->dwNum;
Exit: TraceFunctLeave(); return( hr ); }
STDMETHODIMP CRestorePointInfo::get_TimeStamp( INT nOffDate, VARIANT *pvarTime ) { TraceFunctEnter("CRestorePointInfo::get_TimeStamp"); HRESULT hr = S_OK; SYSTEMTIME st;
VALIDATE_INPUT_ARGUMENT(pvarTime); ::VariantInit(pvarTime); V_VT(pvarTime) = VT_DATE; m_pRPI->stTimeStamp.GetTime( &st ); ::SystemTimeToVariantTime( &st, &V_DATE(pvarTime) ); if ( nOffDate != 0 ) V_DATE(pvarTime) += nOffDate;
Exit: TraceFunctLeave(); return( hr ); }
STDMETHODIMP CRestorePointInfo::get_Year( INT *pnYear ) { TraceFunctEnter("CRestorePointInfo::get_Year"); HRESULT hr = S_OK;
VALIDATE_INPUT_ARGUMENT(pnYear); *pnYear = m_pRPI->stTimeStamp.GetYear();
Exit: TraceFunctLeave(); return( hr ); }
STDMETHODIMP CRestorePointInfo::get_Month( INT *pnMonth ) { TraceFunctEnter("CRestorePointInfo::get_Month"); HRESULT hr = S_OK;
VALIDATE_INPUT_ARGUMENT(pnMonth); *pnMonth = m_pRPI->stTimeStamp.GetMonth();
Exit: TraceFunctLeave(); return( hr ); }
STDMETHODIMP CRestorePointInfo::get_Day( INT *pnDay ) { TraceFunctEnter("CRestorePointInfo::get_Day"); HRESULT hr = S_OK;
VALIDATE_INPUT_ARGUMENT(pnDay); *pnDay = m_pRPI->stTimeStamp.GetDay();
Exit: TraceFunctLeave(); return( hr ); }
#define RP_ADVANCED 1
STDMETHODIMP CRestorePointInfo::get_IsAdvanced( VARIANT_BOOL *pfIsAdvanced ) { TraceFunctEnter("CRestorePointInfo::get_IsAdvanced"); HRESULT hr = S_OK;
VALIDATE_INPUT_ARGUMENT(pfIsAdvanced); *pfIsAdvanced = ( m_pRPI->dwFlags == RP_ADVANCED );
Exit: TraceFunctLeave(); return( hr ); }
STDMETHODIMP CRestorePointInfo::CompareSequence( IRestorePoint *pRP, INT *pnCmp ) { TraceFunctEnter("CRestorePointInfo::CompareSequence"); HRESULT hr = S_OK; INT nSrc; INT nCmp;
VALIDATE_INPUT_ARGUMENT(pRP); VALIDATE_INPUT_ARGUMENT(pnCmp); hr = pRP->get_SequenceNumber( &nSrc ); if ( FAILED(hr) ) goto Exit;
nCmp = (int)m_pRPI->dwNum - nSrc; if ( nCmp == 0 ) *pnCmp = 0; else if ( nCmp > 0 ) *pnCmp = 1; else *pnCmp = -1;
Exit: TraceFunctLeave(); return( hr ); }
/////////////////////////////////////////////////////////////////////////////
//
// CRenamedFolders class
//
/////////////////////////////////////////////////////////////////////////////
CRenamedFolders::CRenamedFolders() { }
/////////////////////////////////////////////////////////////////////////////
// CRenamedFolders - IRenamedFolders methods
STDMETHODIMP CRenamedFolders::get_Count( long *plCount ) { TraceFunctEnter("CRenamedFolders::get_Count"); HRESULT hr = S_OK;
VALIDATE_INPUT_ARGUMENT(plCount); *plCount = g_pRstrMgr->GetRFICount();
Exit: TraceFunctLeave(); return( hr ); }
/******************************************************************************/
STDMETHODIMP CRenamedFolders::get_OldName( long lIndex, BSTR *pbstrName ) { TraceFunctEnter("CRenamedFolders::OldName"); HRESULT hr = S_OK; PSRFI pRFI;
VALIDATE_INPUT_ARGUMENT(pbstrName); if ( lIndex < 0 || lIndex >= g_pRstrMgr->GetRFICount() ) { ErrorTrace(TRACE_ID, "Invalid Argument, out of range"); hr = E_INVALIDARG; goto Exit; } pRFI = g_pRstrMgr->GetRFI( lIndex ); ALLOCATEBSTR_AND_CHECK_ERROR( pbstrName, pRFI->strOld );
Exit: TraceFunctLeave(); return( hr ); }
/******************************************************************************/
STDMETHODIMP CRenamedFolders::get_NewName( long lIndex, BSTR *pbstrName ) { TraceFunctEnter("CRenamedFolders::NewName"); HRESULT hr = S_OK; PSRFI pRFI;
VALIDATE_INPUT_ARGUMENT(pbstrName); if ( lIndex < 0 || lIndex >= g_pRstrMgr->GetRFICount() ) { ErrorTrace(TRACE_ID, "Invalid Argument, out of range"); hr = E_INVALIDARG; goto Exit; } pRFI = g_pRstrMgr->GetRFI( lIndex ); ALLOCATEBSTR_AND_CHECK_ERROR( pbstrName, pRFI->strNew );
Exit: TraceFunctLeave(); return( hr ); }
/******************************************************************************/
STDMETHODIMP CRenamedFolders::get_Location( long lIndex, BSTR *pbstrName ) { TraceFunctEnter("CRenamedFolders::Location"); HRESULT hr = S_OK; PSRFI pRFI;
VALIDATE_INPUT_ARGUMENT(pbstrName); if ( lIndex < 0 || lIndex >= g_pRstrMgr->GetRFICount() ) { ErrorTrace(TRACE_ID, "Invalid Argument, out of range"); hr = E_INVALIDARG; goto Exit; } pRFI = g_pRstrMgr->GetRFI( lIndex ); ALLOCATEBSTR_AND_CHECK_ERROR( pbstrName, pRFI->strLoc );
Exit: TraceFunctLeave(); return( hr ); }
// end of file
|