یادمه بیسسیک یک دستوری داره که با md شروع میشه و یک فولدر میسازه اما بقیش یادم نمی یاد کسی این رو میدونه
درمورد تغیر نام یک پوشه ساخته شده با دستور بالا چی ؟؟
یادمه بیسسیک یک دستوری داره که با md شروع میشه و یک فولدر میسازه اما بقیش یادم نمی یاد کسی این رو میدونه
درمورد تغیر نام یک پوشه ساخته شده با دستور بالا چی ؟؟
از طریق توابع داخلی ویژوال بیسیک :
از طریق توابع APIMkDir "C:\New Folder"
Private Declare Function MakeSureDirectoryPathExists Lib "imagehlp.dll" (ByVal lppath As String) As Long
'---------------------------------------------------'
MakeSureDirectoryPathExists ("C:\New Folder\")
سلام.
من Basic بلد نیستم، اما میدونم که MakeSureDirectoryPathExists در DbgHelp.dll قرار داره. مایکروسافت از ویندوز 2000 به بعد، این تابع رو از imghelp.dll به dbghelp.dll برد ولی برای حفط Backward Compatibility، تابع مورد نظر در imghelp.dll در حال حاضر، تابع معادل رو در dbghelp.dll صدا میزنه. در نتیجه، توصیه می کنم تا هنگام تعریف تابع، از dbghelp.dll استفاده بشه.
البته به خاطر داشته باشید، که تابع فوق قادر نیست تا مسیرهایی که از کاراکترهای unicode تشکیل شدن رو ایجاد کنه. اگر شما می خواهید مسیرهای Unicode رو هم پشتیبانی کنید، از SHCreateDirectoryEx در shell32.dll استفاده کنید.
این کد هم این کارو میکنه :
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 اشیا کاربردی دیگری هم داره که خودت میتونی تست کنی
بهترین راه استفاده از دستورات ویژواله که همون MKDIR می باشد
Farshad Nooranian
با تشکر از همگی
ایا برای تغیر نام یک فولدر هم توابع داخلی وجود داره
از Api ها میشه استفاده کرد از دستورات کامندپرمپت هم میشه استفاده کرد
Farshad Nooranian
سلام
من با کد زیر
Dim fs As FileSystemObject
Set fs = CreateObject("Scripting.FileSystemObject")
fs.CreateFolder Environ("homedrive") & "\reza"
یک فولدر در درایو ویندوز میسازم
چطور باید بگم که اگه فولدر وجود نداشت دستور بالا اجرا بشه و اگه وجود داشت ادامه دستوراتی در دکمم دارم؟
مرسی
سلام علیکم
با دستور MkDir وی بی هم میتوانیم پوشه ای در مسیر مشخص شده ایجاد کنیم، برای مثال در کد شما میشود:
و اگر بخواهیم پیش از ایجاد وجود فولدر را بررسی کنیم:کد HTML:Private Sub Command1_Click() MkDir Environ("homedrive") & "\reza" End Subموفق باشیدکد HTML:Private Sub Command1_Click() Dim sDir$ sDir$ = Environ("homedrive") & "\reza" If Dir(sDir$) = "" Then MkDir sDir$ End If End Sub
.: مداحی دلنشین شهیدی که در زادروز ولادتش پرکشید [ تصاویر... ]
.: مداحی دلنشین شهید غلامعلی رجبی [ تصاویر... ]
.: لطفا سوالاتی که قابل طرح در انجمن هستند را در خصوصی ارسال نفرمائید.
مرسی از همه دوستان
از کد
Private Sub Command1_Click() Dim sDir$ sDir$ = Environ("homedrive") & "\reza" If Dir(sDir$) = "" Then MkDir sDir$ End If End Sub
استفاده کردم وgلی وقتی پوشه وجود داشته باشه پیغام میده!!!!!!
کد HTML: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\Downl oadManager\AppDataIDMFolder")
End Sub
مرسی
بله چون این مسیر به فولدر اشاره دارد بایستی کاراکتر "\" را به انتهای مسیر اضافه کنیم (البته این تنها برای فولدرهاست)، که میشود:
موفق باشیدکد HTML:sDir$ = Environ("homedrive") & "\reza\"
.: مداحی دلنشین شهیدی که در زادروز ولادتش پرکشید [ تصاویر... ]
.: مداحی دلنشین شهید غلامعلی رجبی [ تصاویر... ]
.: لطفا سوالاتی که قابل طرح در انجمن هستند را در خصوصی ارسال نفرمائید.
درود
الان Vb نداشتم تست کنم اما اینرو پیدا کردم
برای ساخت Folder لینک زیرو ببین
http://www.devx.com/vb2themax/Tip/18828
و برای تغییر نام هم این لینک رو
http://www.fmsinc.com/free/newtips/A...ccesstip31.asp
موفق باشید.
Everything that has a beginning has an end. ... The End?
سلام با این دستور هم می توان نام یک فایل را تغییر داد :
name "old name" as "new name"
مثال :
Name "d:/video1" As "d:/video"
.: مداحی دلنشین شهیدی که در زادروز ولادتش پرکشید [ تصاویر... ]
.: مداحی دلنشین شهید غلامعلی رجبی [ تصاویر... ]
.: لطفا سوالاتی که قابل طرح در انجمن هستند را در خصوصی ارسال نفرمائید.
باز زمانی که فولدر وجود داشته باشه مشکل میگیره و همون ارور رو میده!!!!!
در کد زیر چرا دستور 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\Downl oadManager\AppDataIDMFolder")
End Sub
مرسی
متاسفانه نقطه ضعفی که در تابع 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 عمل نمیکنه؟!!!!!!!
موفق باشیدکد HTML: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\AppDataIDMFolder") End Sub
.: مداحی دلنشین شهیدی که در زادروز ولادتش پرکشید [ تصاویر... ]
.: مداحی دلنشین شهید غلامعلی رجبی [ تصاویر... ]
.: لطفا سوالاتی که قابل طرح در انجمن هستند را در خصوصی ارسال نفرمائید.
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