تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
احتاج كود لعمل نسخة من قاعدة بيانات اكسس اثناء الاتصال بها
#1
احتاج كود لعمل نسخة من قاعدة بيانات اكسس  عندما تكون مفتوحة او اثناء الاتصال بها.

انا استخدم     FileCopy  ولكن يلزم قطع الاتصال قبل النسخ.



هل يوجد طريقة 

------------------------------
الرد }}}
تم الشكر بواسطة:
#2
اخوية العزيز اذا تحب تنسخ ملف اثناء استخدامة فلازم تستخدم نسخ الملف كBinary
PHP كود :
Private Sub cmdBackupDataBase_Click()
 
     Dim X As String
      Open App
.Path "\file.mdb" For Binary As #1
 
     Open App.Path "\file_Copy.mdb" For Binary As #2
 
     X String(LOF(1) - 1" ")
 
     Get #1, , X
 
     Put #2, , X
 
     Close
End Sub 
الرد }}}
#3
أهلا بك أخي الكريم , جرب الثلاث طرق , الطريقة الأولى طريقة الأخ "محمد العبيدي" وهاذي طريقتين إضافيه :

- الطريقة الثانية : هي بإستخدام مكتبة الـ Microsoft Scripting Runtime حيث لابد أولا من إضافتها لمشروع برنامجك وذلك بالذهاب إلى قائمة "Project " أو "مشروع" في شاشة برنامج الفيجول بيسك ثم إختيار الأمر "References" أو "مراجع" ثم بعد ظهور الشاشة الخاصه بأسماء المكتبات إبحث عن إسم المكتبه التي بإسم  Microsoft Scripting Runtime ثم ضع علامة صح عليها ثم "OK" أو "موافق" ثم إستخدم الكود التالي :

PHP كود :
Private Sub Command1_Click()

Dim FSO As New FileSystemObject

FSO
.CopyFile "D:\db1.mdb""C:\db1.mdb"
DoEvents

Set FSO 
Nothing

End Sub 

- ملاحظه :- إذا إستخدمت الطريقة الثانية , يجب إرفاق ملف المكتبة المستخدمه وهو بإسم scrrun.dll يجب إرفاقه مع ملفات تثبيت برنامجك عند تحزيم ملفات برنامجك , وهذا الملف موجود في جهازك في هذا المسار : C:Windows\System32

- الطريقة الثالثة : وهي بإستخدام دالة API , قم بإضافة هذا الكود في أعلى كود الفورم الذي تريد إستخدام كود النسخ فيه :

PHP كود :
Private Declare Function CopyFile Lib "kernel32" Alias "CopyFileA" _
       
(ByVal lpExistingFileName As StringByVal lpNewFileName As String_
       ByVal bFailIfExists 
As Long) As Long

Private Function CopyFileA(OldFileName As StringNewFileName As String) As Boolean
On Error Resume Next
Err.Clear

If CopyFile(OldFileNameNewFileNameFalse) <> 1 Then
   CopyFileA 
False
Else
 
  CopyFileA True
End 
If

End Function 

ثم إستخدم كود النسخ في المكان الذي تريد في الفورم هكذا :

PHP كود :
Private Sub Command1_Click()

If 
CopyFileA("D:\db1.mdb""C:\db1.mdb") = True Then
   MsgBox 
"تم النسخ بنجاح"
Else
 
  MsgBox "لم يتم النسخ"
End If

End Sub 
الرد }}}
#4
(31-10-16, 10:13 PM)محمد العبيدي كتب : اخوية العزيز اذا تحب تنسخ ملف اثناء استخدامة فلازم تستخدم نسخ الملف كBinary
PHP كود :
Private Sub cmdBackupDataBase_Click()
 
     Dim X As String
      Open App
.Path "\file.mdb" For Binary As #1
 
     Open App.Path "\file_Copy.mdb" For Binary As #2
 
     X String(LOF(1) - 1" ")
 
     Get #1, , X
 
     Put #2, , X
 
     Close
End Sub 


الف الف شكر اخي الكريم الغالي / [b]محمد العبيدي[/b]

الله يحفظك ويجزيك الف خير

(01-11-16, 01:47 AM)Ahmed_Mansoor كتب : أهلا بك أخي الكريم , جرب الثلاث طرق , الطريقة الأولى طريقة الأخ "محمد العبيدي" وهاذي طريقتين إضافيه :

- الطريقة الثانية : هي بإستخدام مكتبة الـ Microsoft Scripting Runtime حيث لابد أولا من إضافتها لمشروع برنامجك وذلك بالذهاب إلى قائمة "Project " أو "مشروع" في شاشة برنامج الفيجول بيسك ثم إختيار الأمر "References" أو "مراجع" ثم بعد ظهور الشاشة الخاصه بأسماء المكتبات إبحث عن إسم المكتبه التي بإسم  Microsoft Scripting Runtime ثم ضع علامة صح عليها ثم "OK" أو "موافق" ثم إستخدم الكود التالي :

PHP كود :
Private Sub Command1_Click()

Dim FSO As New FileSystemObject

FSO
.CopyFile "D:\db1.mdb""C:\db1.mdb"
DoEvents

Set FSO 
Nothing

End Sub 

- ملاحظه :- إذا إستخدمت الطريقة الثانية , يجب إرفاق ملف المكتبة المستخدمه وهو بإسم scrrun.dll يجب إرفاقه مع ملفات تثبيت برنامجك عند تحزيم ملفات برنامجك , وهذا الملف موجود في جهازك في هذا المسار : C:Windows\System32

- الطريقة الثالثة : وهي بإستخدام دالة API , قم بإضافة هذا الكود في أعلى كود الفورم الذي تريد إستخدام كود النسخ فيه :

PHP كود :
Private Declare Function CopyFile Lib "kernel32" Alias "CopyFileA" _
       
(ByVal lpExistingFileName As StringByVal lpNewFileName As String_
       ByVal bFailIfExists 
As Long) As Long

Private Function CopyFileA(OldFileName As StringNewFileName As String) As Boolean
On Error Resume Next
Err.Clear

If CopyFile(OldFileNameNewFileNameFalse) <> 1 Then
   CopyFileA 
False
Else
 
  CopyFileA True
End 
If

End Function 

ثم إستخدم كود النسخ في المكان الذي تريد في الفورم هكذا :

PHP كود :
Private Sub Command1_Click()

If 
CopyFileA("D:\db1.mdb""C:\db1.mdb") = True Then
   MsgBox 
"تم النسخ بنجاح"
Else
 
  MsgBox "لم يتم النسخ"
End If

End Sub 

عاجز عن الشكر استاذي الفاضل / Ahmed_Mansoor

الله يطول بعمرك ويجزيك الف خير 
الرد }}}
تم الشكر بواسطة: Amir_Alzubidy , Ahmed_Mansoor


المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
  تعديل بيانات عمود DataGridView دفعة واحدة مصمم هاوي 0 73 05-03-24, 02:40 PM
آخر رد: مصمم هاوي
  [vb6.0] اضافة الصور الى ملف واسترجاعها بدون قاعدة البيانات haitham Muhammed 3 417 24-01-24, 01:51 PM
آخر رد: haitham Muhammed
  [vb6.0] طريقة تصدير بيانات الداتا ريبورت datareport لصيغة pdf hamada salah90 6 1,479 19-01-24, 07:59 PM
آخر رد: hamada salah90
  اريد طريقة تصدير بيانات الاكتف ريبورت لملف اكسل scsi7000 0 299 03-11-23, 10:41 AM
آخر رد: scsi7000
Question [vb6.0] نامل المساعدة في المثال المرفق يوجد مشكلة في إضافة رقم الصنف الى قاعدة البيانات لا اع Microformt 1 241 23-10-23, 12:11 AM
آخر رد: Taha Okla
  نقل بيانات الجدول الى جدول اخر بعد تجميع البيانات haithamelareny 1 357 10-08-23, 11:54 PM
آخر رد: ahmedabdelaliem
Question [vb6.0] هل يوجد كود لضغط وإصلاح قاعدة البيانات ، أعني قاعدة بيانات Access؟ Microformt 1 455 27-07-23, 08:33 PM
آخر رد: Taha Okla
  [vb6.0] كود ربط قاعدة بيانات اكسيس 2010 بالفيجوال بيسك6 وادي العوضي 4 553 21-07-23, 12:11 AM
آخر رد: وادي العوضي
  [vb6.0] المساعدة في تشغيل استعلام الحاقي في تبويب الاستعلامات في قاعدة بيانات اكسيس من واجهة وادي العوضي 6 600 09-07-23, 12:44 AM
آخر رد: وادي العوضي
  [سؤال] كود تشغيل استعلامين معمولين في قاعدة بيانات اكسس من واجهة البرنامج من خلال زر امر وادي العوضي 16 1,449 04-07-23, 03:26 PM
آخر رد: وادي العوضي

التنقل السريع :


يقوم بقرائة الموضوع: بالاضافة الى ( 1 ) ضيف كريم