高手请进,请教个问题!
/// <summary>
/// 数据库的备份和实时进度显示代码:
/// </summary>
/// <param name="strDbName"></param>
/// <param name="strFileName"></param>
/// <param name="pgbMain"></param>
/// <returns></returns>
public bool BackUPDB(string strDbName, string strFileName, ProgressBar pgbMain)
{
PBar = pgbMain;
SQLDMO.SQLServer svr = new SQLDMO.SQLServerClass();
try
{
//svr.Connect(ServerName, UserName, Password);
svr.Connect(comboBox3.SelectedItem.ToString(), textBox12.Text.Trim(), textBox13.Text.Trim());
SQLDMO.Backup bak = new SQLDMO.BackupClass();
bak.Action = 0;
bak.Initialize = true;
SQLDMO.BackupSink_PercentCompleteEventHandler pceh = new SQLDMO.BackupSink_PercentCompleteEventHandler(Step);
bak.PercentComplete += pceh;
bak.Database = strDbName;
bak.Files = strFileName;
bak.BackupSetName = strDbName;
bak.SQLBackup(svr);
return true;
}
catch (Exception err)
{
throw (new Exception("备份数据库失败" + err.Message));
}
finally
{
svr.DisConnect();
}
}
/// <summary>
/// 累加
/// </summary>
/// <param name="message"></param>
/// <param name="percent"></param>
private void Step(string message, int percent)
{
PBar.Value = percent;
}
为啥percent的值总是为“0”呢?