السلام عليكم
هذا كود لأخذ نسخة احتياطية من قاعدة البيانات
( "My.Computer.FileSystem.CopyFile("C:\database_tarek.mdf", "C:\bbb\database_tarek.mdf
ويعمل بشكل ممتاز
ولكن عندما يتم تنزيل البرنامج بعد تحزيمه ينزل اوتوماتيك داخل البروجرام فايا program file حيث يختلف اسمها اذا كان الويندوز xp أو 7
وبذلك اختلف مسار الملف المراد عمل نسخة منه
المطلوب :
هل يمكن عند تحزيم البرنامج أن يتم تنزيله على المسار c: بدون البروجرام فايل حتى نستطيع عمل نسخه احتياطية بأمر واحد ..حيث مسار واحد للملف
شكرا[b]
[/b]
السلام عليكم
اخي العزيز الافضل والافضل هو بجعل المستخدم يحدد مسار النسخة الاحتياطية عن طريق الsavefiledialog
اخي الفاضل dreamsdotne
اشكرك على مشاركتك
كتبت الكود كالتالي
':backup database database_tarek.mdf to disk = 'c
حيث ان اسم قاعدة البينات database_tarek.mdf فوضع خطوط زرقاء تحت الكود .. ما الخطأ
نحمده ونصلي على رسوله الكريم
لم اختبر الكود، فلا أدري هل فيه خطأ ام لا، إن شاء الله أنه يعمل دون مشاكل:
كود :
[align=left]Dim sfd As New SaveFileDialog()
sfd.Title = "نسخة احتياطية"
sfd.FileName = String.Empty
sfd.Filter = "نسخة احتياطية|*.bak"
If sfd.ShowDialog() = DialogResult.OK Then
Dim dbname As String = String.Format("{0}{1} {2}{3}", _
System.IO.Path.GetDirectoryName(sfd.FileName), _
System.IO.Path.GetFileNameWithoutExtension(sfd.FileName), _
DateTime.Today.ToShortDateString().Replace("/"c, "-"c), _
System.IO.Path.GetExtension(sfd.FileName))
Try
Dim con As New System.Data.SqlClient.SqlConnection("Connection String")
Dim cmd As New System.Data.SqlClient.SqlCommand()
con.Open()
cmd.Connection = con
cmd.CommandType = CommandType.Text
cmd.CommandText = "backup database database_tarek to disk ='" & dbname & "'"
cmd.ExecuteNonQuery()
MessageBox.Show("تم إنشاء النسخة الاحتياطية", Text, MessageBoxButtons.OK, MessageBoxIcon.Information)
Catch ex As Exception
MessageBox.Show(ex.Message, "خطأ", MessageBoxButtons.OK, MessageBoxIcon.Error)
Finally
con.Close()
End Try
[/align]
السلام عليكم
فيه طريقتين أقوم باستخدامهما ويعملان معي بنجاح وهذا يتوقف على أسلوب عمل النسخة الاحتياطية :
كود الطريقة الأولى :
PHP كود :
FileCopy((Application.StartupPath + "\tarek.mdb"), "C:\"))
كود الطريقة الثانية :
PHP كود :
Dim CopyFrom, CopyTo As String
CopyFrom = Application.StartupPath & "\tarek.mdb"
CopyTo = "C:\"
[/align]
والسلام عليكم ورحمة الله وبركاته
بصراحة جربتهم كلهم ومفيش حاجه نافعة .. لو مثال مرفق اكون شاكر جدا
cvcvcv كتب :بصراحة جربتهم كلهم ومفيش حاجه نافعة .. لو مثال مرفق اكون شاكر جدا
السلام عليكم
آااااسف جداً على التأخير نظراً لظروف العمل
المثال مرفق مع خالص شكري وتقديري للعضو Ramilove من المنتدى القديم
أحب أوضح نقطة هامة وهي :
لحفظ قاعدة البيانات على C: تحت نظام ويندوز 7 يجب عمل الآتي:
من لوحة التحكم للويندوز Control Panel نختار
User Account Control settings
ونختار منها
Never Notify
وعلى الرغم من خطورة هذا الاختيار إلا أنه ضروري في بعض الأحيان عند التعامل مع قواعد البيانات الموجودة على القرص C:
والسلام عليكم ورحمة الله وبركاته