View Full Version : مشکل در Back Up
VB Master
پنج شنبه 01 اسفند 1387, 01:20 صبح
با سلام به تمامی دوستان
من تازه عضو این سایت شده ام
سایت بسیار خوبیه
بچه ها من یه برنامه میخوام بنویسم که به محض اجرای اون در مسیری که بهش دادم یک Back Up گرفته بشه
من این چند خط کد رو در Form Load نوشتم به محض باز شدن Back Up گرفته میشه اما وقتی به مسیر مربوطه میرم تا Back Up رو اجرا کنم با یک Run Time Error مواجه میشم
http://mamad-poker.persiangig.com/Run%20Time%20Error.JPG
و اینم از کد هایی که نوشتم
Private Sub Form_Load()
Dim back As Variant
back = App.Path + "\Project1.exe"
FileCopy back, "D:\Project1.exe"
End Sub
واقعا ممنون میشم اگه کسی بتونه کمکم کنه
sh2007
پنج شنبه 01 اسفند 1387, 08:12 صبح
دوست من سلام
معمولا براي بكاپ گرفتن بانك اطلاعاتي كه اطلاعات مهم توي اونه بكاپ گرفته مي شه كه يا اكسسه يا اس كيو ال نه خود پروژه حالا اگه خود پروژه رو بخواي بايد با توابع api اين كار رو انجام بدي
m_vb1386
پنج شنبه 01 اسفند 1387, 08:35 صبح
اين كه كاملا واضحه
علتش اينه كه شما در رويداد لود شدن فرم ميخواهيد فايلي كه باز هست را over write كنيد كه سيستم عامل اجازه تغيير روي فايل رو بهتون نميده مثل موقعي كه يك فايل باز باشه و شما بخواهي اون رو پاك كني
xman_dj
پنج شنبه 01 اسفند 1387, 14:27 عصر
Public Function CopyFileAny(currentFilename As String, newFilename As String)
On Error GoTo ErrHan
Dim a%, buffer%, temp$, fRead&, fSize&, B%
a = FreeFile
buffer = 4048
Open currentFilename For Binary Access Read As a
B = FreeFile
Open newFilename For Binary Access Write As B
fSize = FileLen(currentFilename)
fRead = 0
While fRead < fSize
DoEvents
If buffer > (fSize - fRead) Then buffer = (fSize - fRead)
temp = Space(buffer)
Get a, , temp
Put B, , temp
fRead = fRead + buffer
Wend
Close B
Close a
CopyFileAny = 1
Exit Function
ErrHan:
MsgBox "error backup" & vbCrLf & Err.Description, vbCritical + vbMsgBoxRtlReading
CopyFileAny = 0
End Function
شاید این تابع مشکلتو حل کنه.
نحوه استفاده
CopyFileAny App.Path & "\db.mdb", address new file.Text
VB Master
یک شنبه 04 اسفند 1387, 18:15 عصر
دوست عزيز آقاي xman_dj از اين كه توجه كردي و وقتي گزاشتي واقعا ممنون
من قطعه كدي كه شما گفتي رو وارد كردم و براي گرفتن Back Up از برنامه ام در يه Command اين كد رو نوشتم
Private Sub Command1_Click()
CopyFileAny App.Path & "Project1.exe", "C:\Project1.exe"
End Sub
اما در حال حاضر با زدن اين دكمه Back Up گرفته ميشه در مسيري كه دادم اما برنامه ي من 24K حجم داره و با پسوند Exe مي باشد ولي زماني كه Back Up گرفته ميشه پسوند برنامه Cmd مي باشد و حجمشم 0 هست
مشكل كجاست خواهشا :متفکر:
xxxxx_xxxxx
یک شنبه 04 اسفند 1387, 19:54 عصر
Private Sub Command1_Click()
CopyFileAny App.Path & "Project1.exe", "C:\Project1.exe"
End Subمشكل كجاست
اينجا:
CopyFileAny App.Path & "\Project1.exe", "C:\Project1.exe"
VB Master
یک شنبه 04 اسفند 1387, 21:43 عصر
واقعا مرسي دوست عزيز آقاي :قلب: xxxxx_xxxxx :قلب: كه به اين نكته ي ريزي كه من توجه نكردم شما اشاره كردين
دمه همه ي دوستان برنامه نويس گرم واقعا كمكم كردين
از دو دوست عزيزم آقاي :قلب: xman_dj و xxxxx_xxxxx :قلب: واقعا سپاس گزارم
vBulletin® v4.2.5, Copyright ©2000-1404, Jelsoft Enterprises Ltd.