View Full Version : ساخت یک نیو فولدر با بیسیک
majjjj
پنج شنبه 28 تیر 1386, 20:49 عصر
یادمه بیسسیک یک دستوری داره که با md شروع میشه و یک فولدر میسازه اما بقیش یادم نمی یاد کسی این رو میدونه
درمورد تغیر نام یک پوشه ساخته شده با دستور بالا چی ؟؟
M8SPY_OK
پنج شنبه 28 تیر 1386, 21:05 عصر
از طریق توابع داخلی ویژوال بیسیک :
MkDir "C:\New Folder"
از طریق توابع API
Private Declare Function MakeSureDirectoryPathExists Lib "imagehlp.dll" (ByVal lppath As String) As Long
'---------------------------------------------------'
MakeSureDirectoryPathExists ("C:\New Folder\")
mehdi.mousavi
پنج شنبه 28 تیر 1386, 21:18 عصر
از طریق توابع داخلی ویژوال بیسیک :
از طریق توابع API
سلام.
من Basic بلد نیستم، اما میدونم که MakeSureDirectoryPathExists در DbgHelp.dll قرار داره. مایکروسافت از ویندوز 2000 به بعد، این تابع رو از imghelp.dll به dbghelp.dll برد ولی برای حفط Backward Compatibility، تابع مورد نظر در imghelp.dll در حال حاضر، تابع معادل رو در dbghelp.dll صدا میزنه. در نتیجه، توصیه می کنم تا هنگام تعریف تابع، از dbghelp.dll استفاده بشه.
البته به خاطر داشته باشید، که تابع فوق قادر نیست تا مسیرهایی که از کاراکترهای unicode تشکیل شدن رو ایجاد کنه. اگر شما می خواهید مسیرهای Unicode رو هم پشتیبانی کنید، از SHCreateDirectoryEx در shell32.dll استفاده کنید.
__siavash__
جمعه 29 تیر 1386, 00:34 صبح
یادمه بیسسیک یک دستوری داره که با md شروع میشه و یک فولدر میسازه اما بقیش یادم نمی یاد کسی این رو میدونه
درمورد تغیر نام یک پوشه ساخته شده با دستور بالا چی ؟؟
این کد هم این کارو میکنه :
Dim fs As FileSystemObject
Set fs = CreateObject("Scripting.FileSystemObject")
fs.CreateFolder ("F:\Test")
البته این کد هم همون معنی رو میده :
Dim fs As New FileSystemObject
fs.CreateFolder ("F:\test")
در ضمن یادت باشه گزینه Microsoft Scripting Runtime رو از منوی Project --> references
به پروژه اضافه بکنی
در ضمن FileSystemObject اشیا کاربردی دیگری هم داره که خودت میتونی تست کنی
noorsoft
جمعه 29 تیر 1386, 03:04 صبح
بهترین راه استفاده از دستورات ویژواله که همون MKDIR می باشد
majjjj
جمعه 29 تیر 1386, 08:35 صبح
با تشکر از همگی
ایا برای تغیر نام یک فولدر هم توابع داخلی وجود داره
noorsoft
جمعه 29 تیر 1386, 22:45 عصر
از Api ها میشه استفاده کرد از دستورات کامندپرمپت هم میشه استفاده کرد
R2du-soft
یک شنبه 18 تیر 1391, 18:35 عصر
سلام
من با کد زیر
Dim fs As FileSystemObject
Set fs = CreateObject("Scripting.FileSystemObject")
fs.CreateFolder Environ("homedrive") & "\reza"
یک فولدر در درایو ویندوز میسازم
چطور باید بگم که اگه فولدر وجود نداشت دستور بالا اجرا بشه و اگه وجود داشت ادامه دستوراتی در دکمم دارم؟
مرسی
arenaw
یک شنبه 18 تیر 1391, 19:12 عصر
سلام
من با کد زیر
Dim fs As FileSystemObject
Set fs = CreateObject("Scripting.FileSystemObject")
fs.CreateFolder Environ("homedrive") & "\reza"
یک فولدر در درایو ویندوز میسازم
چطور باید بگم که اگه فولدر وجود نداشت دستور بالا اجرا بشه و اگه وجود داشت ادامه دستوراتی در دکمم دارم؟
مرسی
If fs.FolderExists(Environ("homedrive") & "\reza") = False Then fs.CreateFolder Environ("homedrive") & "\reza"
محسن واژدی
یک شنبه 18 تیر 1391, 19:12 عصر
سلام علیکم
با دستور MkDir وی بی هم میتوانیم پوشه ای در مسیر مشخص شده ایجاد کنیم، برای مثال در کد شما میشود:
Private Sub Command1_Click()
MkDir Environ("homedrive") & "\reza"
End Sub
و اگر بخواهیم پیش از ایجاد وجود فولدر را بررسی کنیم:
Private Sub Command1_Click()
Dim sDir$
sDir$ = Environ("homedrive") & "\reza"
If Dir(sDir$) = "" Then
MkDir sDir$
End If
End Sub
موفق باشید
R2du-soft
یک شنبه 18 تیر 1391, 19:34 عصر
مرسی از همه دوستان
از کد
Private Sub Command1_Click() Dim sDir$ sDir$ = Environ("homedrive") & "\reza" If Dir(sDir$) = "" Then MkDir sDir$ End If End Sub
استفاده کردم وgلی وقتی پوشه وجود داشته باشه پیغام میده!!!!!!
run-time '75' :
path\file access error
میخوام اگه وجود نداشت ساخته بشه که این درسته ولی اگه وجود داشت
کدهای زیر که توی همون دکمه است اجرا بشه
Dim R As String
R = Text1.Text
FileCopy Text1.Text & "\cnlurllist.dat", "homedrive\reza\cnlurllist.dat"
End Sub
Private Sub Form_Load()
Set wshshell = CreateObject("WScript.Shell")
Text1.Text = wshshell.RegRead("HKEY_CURRENT_USER\Software\DownloadManager\AppData IDMFolder")
End Sub
مرسی
محسن واژدی
یک شنبه 18 تیر 1391, 19:40 عصر
بله چون این مسیر به فولدر اشاره دارد بایستی کاراکتر "\" را به انتهای مسیر اضافه کنیم (البته این تنها برای فولدرهاست)، که میشود:
sDir$ = Environ("homedrive") & "\reza\"
موفق باشید
بهروز عباسی
یک شنبه 18 تیر 1391, 19:51 عصر
درود
الان Vb نداشتم تست کنم اما اینرو پیدا کردم
برای ساخت Folder لینک زیرو ببین
http://www.devx.com/vb2themax/Tip/18828
و برای تغییر نام هم این لینک رو
http://www.fmsinc.com/free/newtips/Access/accesstip31.asp
موفق باشید.
ho3ein.3ven
یک شنبه 18 تیر 1391, 19:57 عصر
سلام با این دستور هم می توان نام یک فایل را تغییر داد :
name "old name" as "new name"
مثال :
Name "d:/video1" As "d:/video"
star_star
دوشنبه 19 تیر 1391, 15:36 عصر
این کد هم این کارو میکنه :
Dim fs As FileSystemObject
Set fs = CreateObject("Scripting.FileSystemObject")
fs.CreateFolder ("F:\Test")
البته این کد هم همون معنی رو میده :
Dim fs As New FileSystemObject
fs.CreateFolder ("F:\test")
در ضمن یادت باشه گزینه Microsoft Scripting Runtime رو از منوی Project --> references
به پروژه اضافه بکنی
در ضمن FileSystemObject اشیا کاربردی دیگری هم داره که خودت میتونی تست کنی
از این قسمت ایراد میگیره :
fs As FileSystemObject
محسن واژدی
دوشنبه 19 تیر 1391, 15:58 عصر
از این قسمت ایراد میگیره :
fs As FileSystemObject
سلام
اعلان را به Object یا Variant تغییر بدین:
Dim fs As Object
یا
Dim fs
موفق باشید
R2du-soft
دوشنبه 19 تیر 1391, 20:57 عصر
بله چون این مسیر به فولدر اشاره دارد بایستی کاراکتر "\" را به انتهای مسیر اضافه کنیم (البته این تنها برای فولدرهاست)، که میشود:
sDir$ = Environ("homedrive") & "\reza\" موفق باشید
باز زمانی که فولدر وجود داشته باشه مشکل میگیره و همون ارور رو میده!!!!!
در کد زیر چرا دستور else عمل نمیکنه؟!!!!!!!
Private Sub Command1_Click()
Dim sDir$
sDir$ = Environ("homedrive") & "\reza\"
If Dir(sDir$) = "" Then
MkDir sDir$
Else
Dim R As String
R = Text1.Text
FileCopy Text1.Text & "\cnlurllist.dat", "homedrive\reza\cnlurllist.dat"
End If
End Sub
Private Sub Form_Load()
Set wshshell = CreateObject("WScript.Shell")
Text1.Text = wshshell.RegRead("HKEY_CURRENT_USER\Software\DownloadManager\AppData IDMFolder")
End Sub
مرسی
محسن واژدی
دوشنبه 19 تیر 1391, 21:57 عصر
باز زمانی که فولدر وجود داشته باشه مشکل میگیره و همون ارور رو میده!!!!!متاسفانه نقطه ضعفی که در تابع Dir برای بررسی موجودیت فایل وجود داره این هست که حتما بایستی حداقل یک فایل در فولدر مورد نظر وجود داشته باشد، از APIی PathFileExist یا FolderExists که جناب arenaw هم اشاره کردند استفاده کنید که مشکلات ایندستی را ندارد:
Private Declare Function PathFileExists Lib "shlwapi.dll" Alias "PathFileExistsA" (ByVal pszPath As String) As Long
Private Sub Command1_Click()
Dim sDir$
sDir$ = Environ("homedrive") & "\reza"
If PathFileExists (sDir$) = 0 Then
MkDir sDir$
End If
End Sub
در کد زیر چرا دستور else عمل نمیکنه؟!!!!!!!کد چند مشکل جزئی داشت:
Private Declare Function PathFileExists Lib "shlwapi.dll" Alias "PathFileExistsA" (ByVal pszPath As String) As Long
Private Sub Command1_Click()
Dim sDir$
sDir$ = Environ("homedrive") & "\reza\"
If PathFileExists(sDir$) = 0 Then
MkDir sDir$
Else
Dim R As String
R = Text1.Text
FileCopy Text1.Text & "\cnlurllist.dat", sDir$ & "cnlurllist.dat"
End If
End Sub
Private Sub Form_Load()
Set wshshell = CreateObject("WScript.Shell")
Text1.Text = wshshell.RegRead("HKEY_CURRENT_USER\Software\DownloadManager\AppData IDMFolder")
End Sub
موفق باشید
saeed vb6
یک شنبه 02 بهمن 1401, 00:49 صبح
Private Sub Command1_Click()
On Error GoTo a
MkDir "c:\FOLDERNAME"
Open "c:\FOLDERNAME\TEST.txt" For Output As #1
Print #1, Me.Text1.Text
Close #1
Exit Sub
a:
Open "c:\FOLDERNAME\TEST.txt" For Output As #1
Print #1, Me.Text1.Text
Close #1
End Sub
vBulletin® v4.2.5, Copyright ©2000-1404, Jelsoft Enterprises Ltd.