الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

تضمين كود للنسخ الاحتياطي أماكن مختلفة للنسخ

بدأه jafar089 في 6 ديسمبر 2010 · 7 رد · 715 مشاهدة · في قواعد بيانات Microsoft Access
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

لقد عملت برنامج للنسخ الاحتياطي به 3 أزرار حيث أن كل زر يتم حفظ النسخة الاحتياطية في مكان مختلف .

المطلوب / أن يتم عمل زر واحد فقط للنسخ الاحتياطي يحفظ القاعدة في ثلاثة أماكن متفرغة .

وهذا هو كود النسخ المراد التعديل عليه :

Private Sub Backup_Click()
Dim OldFile, DBwithEXT, DBwithoutEXT, NewFile, CopyMyDB
OldFile = CurrentDb.Name
DBwithEXT = Dir(OldFile)
DBwithoutEXT = Left(DBwithEXT, Len(DBwithEXT) - 4)
NewFile = "c:\mybackup" & "\" & DBwithoutEXT & Right(DBwithEXT, 4)
CopyMyDB = "cmd.exe /C copy " & """" & OldFile & """" & " " & """" & NewFile & """"
Shell CopyMyDB, 0
MyErr:
If Err.Number <> 0 Then
MsgBox Err.Number & " - " & Err.Description
End If
Call Shell("regedit.exe /s """ & CurrentProject.Path & "\Enable.reg""", 0)
MsgBox "تم نسخ قاعدة البيانات بنجاح ..", vbOKOnly, "تم النسخ بنجاح"
End Sub

db1.rar

تم تعديل هذه المشاركة بواسطة jafar089 في 6 ديسمبر 2010 في 11:18

#2

تفضل

لاحظ الكود خلف الزر الجديد مع التعديل المناسب لك

0db1.rar

84CJO.gif

#3

جزاك الله خيرا أخى أواب على المثال

وزيادة الخير رابط للمشرفه الغائبه الحاضره برائحتها الذكيه العطره فى كل أرجاء المنتدى

هذا مثال على عملية نسخ قاعدة البيانات الى اي مكان تحدده

تمنياتى لكم بالتوفيق

#4
أواب كتب:

تفضل

لاحظ الكود خلف الزر الجديد مع التعديل المناسب لك

مشكور أخي الكريم .. ولكن الكود يوجد به خطأ ولا يعمل

وقد وجدت الحل بالكود التالي :

Private Sub Backup_Click()
Dim OldFile, DBwithEXT, DBwithoutEXT, NewFile, NewFile2, NewFile3, CopyMyDB
OldFile = CurrentDb.Name
DBwithEXT = Dir(OldFile)
DBwithoutEXT = Left(DBwithEXT, Len(DBwithEXT) - 4)
NewFile = "c:\mybackup\" & "\" & DBwithoutEXT & Right(DBwithEXT, 4)
CopyMyDB = "cmd.exe /C copy " & """" & OldFile & """" & " " & """" & NewFile & """"
Shell CopyMyDB, 0
MyErr:
If Err.Number <> 0 Then
MsgBox Err.Number & " - " & Err.Description
End If
Call Shell("regedit.exe /s """ & CurrentProject.Path & "\Enable.reg""", 0)

OldFile = CurrentDb.Name
DBwithEXT = Dir(OldFile)
DBwithoutEXT = Left(DBwithEXT, Len(DBwithEXT) - 4)
NewFile2 = "d:\mybackup\" & "\" & DBwithoutEXT & Right(DBwithEXT, 4)
CopyMyDB = "cmd.exe /C copy " & """" & OldFile & """" & " " & """" & NewFile2 & """"
Shell CopyMyDB, 0
Call Shell("regedit.exe /s """ & CurrentProject.Path & "\Enable.reg""", 0)

OldFile = CurrentDb.Name
DBwithEXT = Dir(OldFile)
DBwithoutEXT = Left(DBwithEXT, Len(DBwithEXT) - 4)
NewFile3 = "f:\mybackup\" & DBwithoutEXT & Right(DBwithEXT, 4)
CopyMyDB = "cmd.exe /C copy " & """" & OldFile & """" & " " & """" & NewFile3 & """"
Shell CopyMyDB, 0
Call Shell("regedit.exe /s """ & CurrentProject.Path & "\Enable.reg""", 0)

MsgBox "تم نسخ قاعدة البيانات بنجاح ..", vbOKOnly, "تم النسخ بنجاح"
End Sub
#5

تفضل اخى التعديل المطلوب

Private Sub Backup_Click()
Dim OldFile, DBwithEXT, DBwithoutEXT, NewFile, CopyMyDB, mypaths, tpath, i As Integer
mypaths = "c:,d:,f:"
tpath = Split(mypaths, ",")

OldFile = CurrentDb.Name
DBwithEXT = Dir(OldFile)
DBwithoutEXT = Left(DBwithEXT, Len(DBwithEXT) - 4)

For i = 0 To 2
NewFile = tpath(i) & "\mybackup\" & DBwithoutEXT & Right(DBwithEXT, 4)
CopyMyDB = "cmd.exe /C copy " & """" & OldFile & """" & " " & """" & NewFile & """"
Shell CopyMyDB, 0
Next

MyErr:
If Err.Number <> 0 Then
MsgBox Err.Number & " - " & Err.Description
End If
'Call Shell("regedit.exe /s """ & CurrentProject.Path & "\Enable.reg""", 0)
MsgBox "تم نسخ قاعدة البيانات بنجاح ..", vbOKOnly, "تم النسخ بنجاح"
End Sub

و لكن لا اجد اى داعى للسطر الاخير فى الكود

لانه خاص بالتعديل على الريجسترى

مدونتى:-

احترف الأكسس مع أبو يوسف

متغيب حاليا لانشغالى الشديد

#6

ما شاء الله عليك أبا يوسف

يعطيك العافية ..

إذا كان كل قرص يحتوي على مجلد مختلف غير Mybackup فما التغييرات المطلوبة على الكود ؟

#7

اضف اسم المجلد الى الدريف فى هذا المتغير

mypaths = "c:,d:,f:"

مدونتى:-

احترف الأكسس مع أبو يوسف

متغيب حاليا لانشغالى الشديد

#8

مشكور جزيلا .

مواضيع مشابهة

عدد الزوار حالياً

المتواجدون خلال آخر دقيقتين · يتحدّث كل ٣٠ ثانية

—الإجمالي—أعضاء مسجّلون—زوار بدون تسجيل

جارٍ التحقق من المتواجدين…