try
  BS:=TBackupSink.Create;
  MySQLServer:=coSQLServer.Create;
  MyBackUp:=coBackUp2.Create;
  MySQLServer.Connect(strServerName,strUserID,strUserPass);;
  MyBackUp.Database:=strDatabaseName;
  MyBackUp.Initialize:=true;
  MyBackUp.PercentCompleteNotification:=1;
  MyBackUp.Action:=0;//0完整备份,1差异备份,2文件组备份,3日志备份
  MyBackUp.Files:=trim(edtFileDir.Text);
  InterfaceConnect(MyBackUp, IID_BackupSink, BS, FInterfaceConnection);//关键是这里
  MyBackUp.SQLBackup (MySQLServer);
  InterfaceDisconnect(MyBackUp, IID_BackupSink,FInterfaceConnection);//
except
  Forms.application.MessageBox('数据库备份失败!',pchar(Forms.Application.title),64);
  exit;
end;  Forms.application.MessageBox('数据库备份完毕!',pchar(Forms.Application.title),64);
  ProgressBar1.Position:=0;
end;