mirror of https://github.com/tongzx/nt5src
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.
122 lines
2.7 KiB
122 lines
2.7 KiB
// MigrationDriverTestDlg.cpp : implementation file
|
|
//
|
|
|
|
#include "stdafx.h"
|
|
#include "Driver.h"
|
|
#import "\bin\MigDrvr.tlb" no_namespace, named_guids
|
|
#import "\bin\McsVarSetMin.tlb" no_namespace, named_guids
|
|
#include "MigDrvr.h"
|
|
#include "VSEdit.h"
|
|
|
|
#ifdef _DEBUG
|
|
#define new DEBUG_NEW
|
|
#undef THIS_FILE
|
|
static char THIS_FILE[] = __FILE__;
|
|
#endif
|
|
|
|
/////////////////////////////////////////////////////////////////////////////
|
|
// CMigrationDriverTestDlg property page
|
|
|
|
IMPLEMENT_DYNCREATE(CMigrationDriverTestDlg, CPropertyPage)
|
|
|
|
CMigrationDriverTestDlg::CMigrationDriverTestDlg() : CPropertyPage(CMigrationDriverTestDlg::IDD)
|
|
{
|
|
//{{AFX_DATA_INIT(CMigrationDriverTestDlg)
|
|
// NOTE: the ClassWizard will add member initialization here
|
|
//}}AFX_DATA_INIT
|
|
}
|
|
|
|
CMigrationDriverTestDlg::~CMigrationDriverTestDlg()
|
|
{
|
|
}
|
|
|
|
void CMigrationDriverTestDlg::DoDataExchange(CDataExchange* pDX)
|
|
{
|
|
CPropertyPage::DoDataExchange(pDX);
|
|
//{{AFX_DATA_MAP(CMigrationDriverTestDlg)
|
|
// NOTE: the ClassWizard will add DDX and DDV calls here
|
|
//}}AFX_DATA_MAP
|
|
}
|
|
|
|
|
|
BEGIN_MESSAGE_MAP(CMigrationDriverTestDlg, CPropertyPage)
|
|
//{{AFX_MSG_MAP(CMigrationDriverTestDlg)
|
|
ON_BN_CLICKED(IDC_EDIT_VARSET, OnEditVarset)
|
|
ON_BN_CLICKED(IDC_GET_DESC, OnGetDesc)
|
|
ON_BN_CLICKED(IDC_GO, OnGo)
|
|
//}}AFX_MSG_MAP
|
|
END_MESSAGE_MAP()
|
|
|
|
/////////////////////////////////////////////////////////////////////////////
|
|
// CMigrationDriverTestDlg message handlers
|
|
|
|
void CMigrationDriverTestDlg::OnEditVarset()
|
|
{
|
|
CVarSetEditDlg vedit;
|
|
|
|
vedit.SetVarSet(pVarSet);
|
|
|
|
vedit.DoModal();
|
|
|
|
pVarSet = vedit.GetVarSet();
|
|
}
|
|
|
|
void CMigrationDriverTestDlg::OnGetDesc()
|
|
{
|
|
BSTR desc;
|
|
HRESULT hr;
|
|
CString txt;
|
|
|
|
if ( pVarSet == NULL )
|
|
{
|
|
OnEditVarset();
|
|
}
|
|
hr = pDriver->raw_GetTaskDescription(pVarSet,&desc);
|
|
if ( SUCCEEDED(hr) )
|
|
{
|
|
txt = desc;
|
|
}
|
|
else
|
|
{
|
|
txt.Format(L"GetTaskDescription failed, hr=%lx",hr);
|
|
}
|
|
MessageBox(txt);
|
|
|
|
}
|
|
|
|
void CMigrationDriverTestDlg::OnGo()
|
|
{
|
|
HRESULT hr;
|
|
CString txt;
|
|
|
|
if ( pVarSet == NULL )
|
|
{
|
|
OnEditVarset();
|
|
}
|
|
hr = pDriver->raw_PerformMigrationTask(pVarSet,(LONG)m_hWnd);
|
|
if ( SUCCEEDED(hr) )
|
|
{
|
|
txt = "Succeeded!";
|
|
}
|
|
else
|
|
{
|
|
txt.Format(L"PerformMigrationTask failed, hr=%lx",hr);
|
|
}
|
|
|
|
MessageBox(txt);
|
|
}
|
|
|
|
BOOL CMigrationDriverTestDlg::OnInitDialog()
|
|
{
|
|
CPropertyPage::OnInitDialog();
|
|
|
|
HRESULT hr = pDriver.CreateInstance(CLSID_Migrator);
|
|
if ( FAILED(hr) )
|
|
{
|
|
CString msg;
|
|
msg.Format(L"Failed to create Migration Driver, CoCreateInstance returned %lx",hr);
|
|
MessageBox(msg);
|
|
}
|
|
return TRUE; // return TRUE unless you set the focus to a control
|
|
// EXCEPTION: OCX Property Pages should return FALSE
|
|
}
|