a_heidari22
شنبه 19 مرداد 1387, 20:31 عصر
چگونه مي نوان براي برنامه بانك اطلاعاتي ابزار backup ساخت .؟
فقط مي خواهم فايل بانك mdb را از مسير برنامه در جاي ديگر ذخيره كرد ؟ و بتوان آنرا برگرداند ؟
hrj1981
شنبه 19 مرداد 1387, 22:40 عصر
دوست عزيز من براي ساختن يك پشتيبان گير استاندارد از الگوريتم زير استفاده مي كنم!
1- با مقادير FILE SYSTEM OBJECT ببينيد كه ابتدا  فولدر اصلي ديتابيس وجود دارد.
2- با مقادير FILE SYSTEM OBJECT ببينيد كه  آيا فايل اصلي ديتابيس وجود دارد.
3- با مقادير FILE SYSTEM OBJECT ببينيد كه  آيا فولدر اصلي پشتيبان وجود دارد.
"اينجا بايد مشخص نمود فولدرها با تاريخ پشتيبان گيري ايجاد گردد يا فايلهاي ديتابيس"
4-بعد از تعيين نمودن مورد بالا ، اگر فولدر و يا فايل با تاريخ ما وجود داشت بوسيله CommonDialog فايل اصلي ديتابيس را به داخل فولدر كپي مي نماييم تا پشتيبان جديد جايگزين آنها شود و در غير اينصورت با مقادير FILE SYSTEM OBJECT  فولدر پشتيبان جديد را ايجاد مي نماييم و بوسيله CommonDialog فايل اصلي ديتابيس را به داخل فولدر كپي مي نماييم.
كمي گيج كننده است و در عين حال بسيار ساده مي باشد.
من نمونه سورس كد خودم را برايتان مي گذارم اگر كمي ممارست بخرج دهيد كاملا آن را متوجه مي شويد ، ماهم در خدمتيم...
Dim fso1 As New FileSystemObject, fso2 As New FileSystemObject
Dim fso3 As New FileSystemObject, fso4 As New FileSystemObject
Dim fso5 As New FileSystemObject
Dim FSO As New FileSystemObject
'--------------------------------------------------------------------------
Dim f As String, f1 As String, f2 As String, f3 As String
'--------------------------------------------------------------------------
If FSO.FolderExists(App.Path & "\backup" & y & "") = True Then
'------------------------------------------
    If fso1.FolderExists(App.Path & "\backup" & y & "\backup" & Trim(Replace(MESHAMSI.Today, "/", "")) & "") = True Then
        '---------------------------------------------------
        '================================================= ==
        If fso2.FileExists(App.Path & "\dat\tolid" & a & ".mdb") = True Then
        With cmd1
        f = App.Path + "\dat\tolid" & a & ".mdb"
        .Filter = "Access DataBase|*.MDB"
        .FileName = Trim("\tolid" & ShamsiYear & ".MDB")
        .InitDir = fso1.GetFolder(App.Path & "\backup" & y & "\backup" & Trim(Replace(MESHAMSI.Today, "/", "")) & "")
        FileCopy f, .InitDir & .FileName
        End With
        ElseIf fso2.FileExists(App.Path + "\dat\tolid" & a & ".mdb") = False Then
        End If
        '---------------------------------------------------
        If fso3.FileExists(App.Path & "\dat\Forosh" & a & ".mdb") = True Then
        With cmd1
        f1 = App.Path + "\dat\Forosh" & ShamsiYear & ".mdb"
        .Filter = "Access DataBase|*.MDB"
        .FileName = Trim("\Forosh" & ShamsiYear & ".MDB")
        .InitDir = fso1.GetFolder(App.Path & "\backup" & y & "\backup" & Trim(Replace(MESHAMSI.Today, "/", "")) & "")
        FileCopy f1, .InitDir & .FileName
        End With
        ElseIf fso3.FileExists(App.Path + "\dat\Forosh" & a & ".mdb") = False Then
        End If
        '================================================= ==
        If fso4.FileExists(App.Path & "\dat\pic.mdb") = True Then
        With cmd1
        f2 = App.Path + "\dat\pic.mdb"
        .Filter = "Access DataBase|*.MDB"
        .FileName = Trim("\Pic.MDB")
        .InitDir = fso1.GetFolder(App.Path & "\backup" & y & "\backup" & Replace(MESHAMSI.Today, "/", "") & "")
        FileCopy f2, .InitDir & .FileName
        End With
        ElseIf fso4.FileExists(App.Path + "\dat\pic.mdb") = False Then
        End If
        '---------------------------------------------------
        '================================================= ==
        If fso5.FileExists(App.Path & "\mnu.exe") = True Then
        With cmd1
        f3 = App.Path + "\mnu.exe"
        .Filter = "Applaction |*.exe"
        .FileName = Trim("\mnu.exe")
        .InitDir = fso1.GetFolder(App.Path & "\backup" & y & "\backup" & Replace(MESHAMSI.Today, "/", "") & "")
        FileCopy f3, .InitDir & .FileName
        End With
        Tray1.Remove
        End
        ElseIf fso5.FileExists(App.Path + "mnu.exe") = False Then
        End If
    ElseIf fso1.FolderExists(App.Path & "\backup\backup" & Replace(MESHAMSI.Today, "/", "") & "") = False Then
        MkDir (App.Path & "\backup" & y & "\backup" & Replace(MESHAMSI.Today, "/", "") & "")
        Text1_Change
    End If
ElseIf FSO.FolderExists(App.Path & "\backup" & y & "") = False Then
    MkDir (App.Path & "\backup" & y & "")
    Text1_Change
End If
vBulletin® v4.2.5, Copyright ©2000-1404, Jelsoft Enterprises Ltd.