2009-05-21 84 views
1

我在下面的代碼中創建了我使用的數據庫的副本。該代碼執行100%,但我遇到的問題是我無法訪問我的數據庫後,我得到一個「無法啓動您的應用程序。工作組信息文件丟失或由其他用戶專門打開。」所以如果我重新啓動應用程序,它再次正常工作。複製文件後無法訪問mdb數據庫文件

我確定原因是因爲我只能訪問該數據庫使用特定的帳戶名稱和密碼,這不是我登錄的帳戶。

我想要嘗試的是將數據庫mdb默認設置爲沒有用戶訪問它的位置,或者重新分配可以訪問該數據庫mdb的唯一帳戶名稱。

任何想法,將非常感激?我試過玩文件安全,但沒有運氣。

Private Sub cmdBackup_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cmdBackup.Click 
     BackupDialogDB.DefaultExt = ".mdb" 
     BackupDialogDB.InitialDirectory = "c:\" 
     'SaveFileDialog1.ShowDialog() 

     If BackupDialogDB.ShowDialog() = Windows.Forms.DialogResult.OK Then 

      Try 

       Dim sDBFile As String = Application.StartupPath + "\VFMS_DB.mdb" 

       Dim sBackUpFile As String = BackupDialogDB.FileName 


       'First check the file u want to compact exists or not 
       If File.Exists(sDBFile) Then 
        If Not File.Exists(sBackUpFile) Then 
         File.Copy(sDBFile, sBackUpFile) 
        Else 
         File.Delete(sBackUpFile) 
         File.Copy(sDBFile, sBackUpFile) 
        End If 

        MessageBox.Show("The database was successfully backedup to: " + sBackUpFile , "Database Backedup", MessageBoxButtons.OK, MessageBoxIcon.Information) 

        sDBFile = "" 
       Else 
        MessageBox.Show("There is no database to backup. Please restore from a backup", "Database Backup Error", MessageBoxButtons.OK, MessageBoxIcon.Error) 
       End If 

      Catch ex As Exception 
       MsgBox(ex.Message) 
      End Try 
     End If 
    End Sub 

回答

0

數據庫在複製時是否打開? Access在數據庫所在的同一目錄中創建鎖文件* .ldb,您可能希望在複製數據庫之前檢查該文件。