您的批评和鼓励都是我把编程无限办好的动力! 您编程时遇到困难,或遇到不顺心的事想发发牢骚尽管到这里来吧! 虽然本网力求全面,但也不能包罗万象,这些我筛选出的优秀网站连接就是对本站最好的补充! 学习编程当然也离不开书本了,这里收集大量编程书籍! 编程无限之源码超市,这里收集的代码令你意想不到的全面! 欢迎光临编程网校,这里专门收集VB/CB入门文章及技术文章! 欢迎光临编程无限!
     
       
 
当前位置:英文资料 >> FileSystem
create a directory with Visual Basic more than one layer deep
  资料类型: FileSystem 上传时间: 2001-02-21 阅读次数: 1433



If you want to create a directory with Visual Basic more than one layer deep you first must make sure that the directories above it exist. For example, the directory PROJECT directory in C:TEMPFINALPROJECT can not be created until the TEMP then the FINAL directories are created first.

Even though this code is relatively simple, it's surprising to see the number of major applications on the shelves that fail to correctly handle this scenario.

The code shown below consists of two functions. The bValDIR function is needed because in Visual Basic, if you try to create a directory using the MkDir function that already exists, MkDir will generate an error.

Code

Sub MakeDir (sDirName As String)

Dim iMouseState As Integer
Dim iNewLen As Integer
Dim iDirLen As Integer

'Get Mouse State

iMouseState = Screen.MousePointer

'Change Mouse To Hour Glass

Screen.MousePointer = 11

'Set Start Length To Search For []

iNewLen = 4

'Add [] To Directory Name If Not There

If Right$(sDirName, 1) <> "" Then

sDirName = sDirName + ""

End If

'Create Nested Directory

Do While Not bValDir(sDirName)

iDirLen = InStr$(iNewLen, sDirName, "")

If Not bValDir(Left$(sDirName, iDirLen)) Then

MkDir Left$(sDirName, iDirLen - 1)

End If

iNewLen = iDirLen + 1

Loop

'Leave The Mouse The Way You Found It

Screen.MousePointer = iMouseState

End Sub

Function bValDir (sIncoming As String) As Integer

Dim iCheck As String
Dim iErrResult As Integer


On Local Error GoTo ValDirError

If Right$(sIncoming, 1) <> "" Then

sIncoming = sIncoming + ""

End If

iCheck = Dir$(sIncoming)

If iErrResult = 76 Then

bValDir = False

Else

bValDir = True

End If
Exit Function

ValDirError:

Select Case Err

Case Is = 76

iErrResult = Err

Resume Next

Case Else

End Select

End Function


推荐给朋友 点 评( 0 ) 返回前页 关闭此页
   
  本类最热文章排名:
  1.Copy File
2.how to send files to the Recycle Bin
3.detect a DBF file is being used
4.a function to verify if a file exists
5.Format a floppy disk
6.Move a File
7.This function return...
8.Create an entire dir...
9.Lauches an applicati...
10.complete control ove...
   
   
  评论:
 
 
 

 

关于本站 版权声明 联系方法
编程无限 V4.1 Copyright © 1999-2008 21code.com

京ICP备05006938号