Option Explicit
Private WithEvents objBackup As SQLDMO.Backup
Private WithEvents objRestore As SQLDMO.RestorePrivate Sub cmdBak_Click()
Dim objSQLServer As New SQLDMO.SQLServer
Dim objBackup As SQLDMO.Backup
Dim strServer As String
Dim strUserID As String
Dim strPassword As String
Dim strDatabase As String
Dim strFile As String
strServer = "(local)"
strUserID = "sa"
strPassword = "sa"
strDatabase = DATABASE
strFile = txtBakFile.Text    If Dir(strFile) <> "" Then
       If MsgBox("文件" & strFile & "已存在,是否删除?", vbQuestion + vbYesNo) = vbYes Then
           Kill strFile       Else
         Exit Sub
       End If
   End If
    ProgressBar1.Value = 0
    ProgressBar1.Max = 100
    lblProgress.Caption = "备份进度: 0%"
    Screen.MousePointer = 11On Error GoTo ErrorHandler     objSQLServer.Connect strServer, strUserID, strPassword
     Set objBackup = New SQLDMO.Backup    With objBackup
        .PercentCompleteNotification = 1
        .DATABASE = strDatabase
        .Files = strFile
         DoEvents
         Err = 0
        .SQLBackup objSQLServer
         Screen.MousePointer = 11
         ProgressBar1.Value = 100
         DoEvents
    End With
    
    Set objBackup = Nothing
    objSQLServer.Close
    Set objSQLServer = Nothing
    Screen.MousePointer = 0
    Exit SubErrorHandler:    Screen.MousePointer = 0
    MsgBox Err.Description, vbCritical
End Sub'显示进度
Private Sub objBackup_Complete(ByVal Message As String)    lblProgress.Caption = "备份成功!"    Set objBackup = NothingEnd Sub
Private Sub objBackup_PercentComplete(ByVal Message As String, ByVal Percent As Long)
    lblProgress.Caption = "备份进度: " & Percent & "%"
    ProgressBar1.Value = ProgressBar1.Max * (Percent / 100)End Sub
运行以上代码后,出现如下错误:[Microsoft][ODBC SQL Server Driver][SQL Server]无法打开备份设备 'C:\Program Files\Microsoft SQL Server\MSSQL\BACKUP\Settings\wang\桌面\dfa.bak'。设备出现错误或设备脱机。详细信息请参阅 SQL Server 错误日志。
[Microsoft][ODBC SQL Server Driver][SQL Server]BACKUP DATABASE 操作异常终止。
其中运行时,strFile="C:\Documents and Settings\wang\桌面\dfa.bak"
为什么会有以上报错???变成了》》》
无法打开备份设备 'C:\Program Files\Microsoft SQL Server\MSSQL\BACKUP\Settings\wang\桌面\dfa.bak'  奇怪奇怪!!!如果我给strFile="dfa.bak",就能备份成功!并备份到'C:\Program Files\Microsoft SQL Server\MSSQL\BACKUP\"下为什么啊?我就郁闷了,谁帮帮忙?