PDA

View Full Version : سوال: مشکل در استفاده از filecopy



Farhad.VB
جمعه 04 اسفند 1391, 12:07 عصر
سلام.
مشکل این کد چیه که ارور file\path access میده؟
FileSystem.FileCopy "C:\Windows\diary\" & Form2.u & "\diaries", "C:\diaries"
بدون filesystem هم نوشتم بازم کار نکرد. برنامه رو run as adminstarative هم کردم بازم همین ارور رو داد؟؟؟
این کد مال VB6 ه.

SlowCode
جمعه 04 اسفند 1391, 12:41 عصر
سلام
شما نمیتونی پوشه رو با این دستور جابجا کنی، این فقط واسه فایل هست. Form2.u چیه؟
اینطوری بنویس:

FileCopy "C:\Windows\diary\diaries.txt", "C:\diaries.txt"

Farhad.VB
جمعه 04 اسفند 1391, 12:43 عصر
سلام
شما نمیتونی پوشه رو با این دستور جابجا کنی، این فقط واسه فایل هست. Form2.u چیه؟
اینطوری بنویس:

FileCopy "C:\Windows\diary\diaries.txt", "C:\diaries.txt"


میخوام که فولدر و محتویاتش و کپی کنم به جایی دیگه

form2.u یک متغیر عمومیه که متن text1.text که در form2 هستش و به عنوان user name استفاده میشه

SlowCode
جمعه 04 اسفند 1391, 12:49 عصر
باید از متد copyfolder استفاده کنی:

Set fso = CreateObject("scripting.filesystemobject")
fso.copyfolder "C:\New folder", "C:\New"


اون تاپیک قبلی رو حذف کن! واسه یه سوال یه تاپیک کافیه!

Farhad.VB
جمعه 04 اسفند 1391, 13:19 عصر
باید از متد copyfolder استفاده کنی:

Set fso = CreateObject("scripting.filesystemobject")
fso.copyfolder "C:\New folder", "C:\New"


اون تاپیک قبلی رو حذف کن! واسه یه سوال یه تاپیک کافیه!

مرسی
حالا اگه بخوام ببینم یه پوشه وجود داره یا نه باید چیکار کنم؟(file exist)

SlowCode
جمعه 04 اسفند 1391, 13:28 عصر
به نظرم اگه چند ثانیه تامل میکردی جواب رو پیدا میکردی. واسه پوشه که از کلمه فایل استفاده نمیکنن! باید بنویسی FolderExits
If fso.folderexists("C:\Users") Then MsgBox "Yes, Exists"

باید به گوگل بگم سایتش رو ببنده:گیج: انگار این سایت ازش بهتر عمل میکنه.

Farhad.VB
جمعه 04 اسفند 1391, 13:33 عصر
به نظرم اگه چند ثانیه تامل میکردی جواب رو پیدا میکردی. واسه پوشه که از کلمه فایل استفاده نمیکنن! باید بنویسی FolderExits
If fso.folderexists("C:\Users") Then MsgBox "Yes, Exists"

باید به گوگل بگم سایتش رو ببنده:گیج: انگار این سایت ازش بهتر عمل میکنه.

خوب میشه ببینی مشکل این چیه؟
همش قسمت else رو اجرا میکنه که یعنی این پوشه وجود نداره؟؟
If fso.FolderExists("C:\Widnows\diary\" & Form2.u & "\diaries") Then
If Not fso.FolderExists("C:\diaries") Then
MkDir ("C:\diaries")
End If
Set fso = CreateObject("scripting.filesystemobject")
fso.copyfolder "C:\Windows\diary\" & Form2.u & "\diaries", "C:\diaries"
MsgBox "Your diaries saved at: C:\dairies", , "saved"
Else
MsgBox "you have not saved any diaries yet", , "Error"
End If

SlowCode
جمعه 04 اسفند 1391, 13:39 عصر
ببین این درست کار میکنه؟
Set fso = CreateObject("scripting.filesystemobject")
If fso.FolderExists("C:\Widnows\diary\" & Form2.u & "\diaries") Then
If fso.FolderExists("C:\diaries") = False Then MkDir ("C:\diaries")
fso.copyfolder "C:\Windows\diary\" & Form2.u & "\diaries", "C:\diaries"
MsgBox "Your diaries saved at: C:\dairies", , "saved"
Else
MsgBox "you have not saved any diaries yet", , "Error"
End If
Else
MsgBox "Wrong password", , "Error"
End If

علت اینکه نمیتونی درست خطایابی کنی اینه که درهم نوشتی! وقتی شرط تو در تو مینویسی از تب استفاده کن تا محدوده هر شرط رو ببینی.

Farhad.VB
جمعه 04 اسفند 1391, 13:47 عصر
ببین این درست کار میکنه؟
Set fso = CreateObject("scripting.filesystemobject")
If fso.FolderExists("C:\Widnows\diary\" & Form2.u & "\diaries") Then
If fso.FolderExists("C:\diaries") = False Then MkDir ("C:\diaries")
fso.copyfolder "C:\Windows\diary\" & Form2.u & "\diaries", "C:\diaries"
MsgBox "Your diaries saved at: C:\dairies", , "saved"
Else
MsgBox "you have not saved any diaries yet", , "Error"
End If
Else
MsgBox "Wrong password", , "Error"
End If

علت اینکه نمیتونی درست خطایابی کنی اینه که درهم نوشتی! وقتی شرط تو در تو مینویسی از تب استفاده کن تا محدوده هر شرط رو ببینی.

شما مشکل و درست متوجه نشدی. این قسمتایی که under line میکنم مشکل دارن.
Open "C:\Windows\diary\" & Form2.u & "\" & Form2.u & "pass.dat" For Input As #1
Input #1, pass
Set fso = CreateObject("scripting.filesystemobject")
If Text1.Text = pass Then
If fso.FolderExists("C:\Widnows\diary\" & Form2.u & "\diaries") Then
If Not fso.FolderExists("C:\diaries") Then
MkDir ("C:\diaries")
End If
fso.copyfolder "C:\Windows\diary\" & Form2.u & "\diaries", "C:\diaries"
MsgBox "Your diaries saved at: C:\dairies", , "saved"
Else
MsgBox "you have not saved any diaries yet", , "Error"
End If
Else
MsgBox "Wrong password", , "Error"
End If
Close #1

اینم یه توضیح کلی
میخوام که اگه فولدر diaries توی آدرس "C:\Widnows\diary\" & Form2.u & "\diaries وجود داشت ، فولدر و محتویاتش و کپی کنه تو فولدر c:\diaries و پیغام your diaries save at = C:\diaries رو بده
اگرم وجود نداشت اون فولدر پیغام You have not saved any diaries yet رو نشون بده

Farhad.VB
جمعه 04 اسفند 1391, 14:03 عصر
آقا مرسی مشکلم حل شد، تو خط پنجم به جای windows نوشته بودم widnows:لبخند: