我刚找到一个函数,fso.DeleteFolder(gAppPath),说这个可以删除一个非空的文件夹,只是我不知道gAppPath是什么意思?
假如我要删除当前目录下的文件夹名称为00的文件夹(非空的,有若干不同类型的文件),fso.DeleteFolder(00)写好象不对,请问要怎么设置呢?

解决方案 »

  1.   


    Option Explicit
    'DeleteFolder(文件名, 只读?)//删除一个目录,如果目录的属性是只读的话,你需要把只读值设为true
    Private Sub Command1_Click()
      Dim fso As Object
      Set fso = CreateObject("Scripting.FileSystemObject") '  fso.DeleteFolder "f:\fvf", TrueEnd Sub
      

  2.   

    用Shell更简单些吧。
    参见:  http://topic.csdn.net/u/20080522/11/07c52900-d115-4b7f-8d6b-31e3d9e11b74.html
    '用Shell创建文件夹:  c:\1\2\3\4\5\6\7\8\9  
    Shell "c:\windows/system32\cmd.exe /c mkdir ""c:\1\2\3\4\5\6\7\8\9""" 
    '删除文件夹f:\5555 用这个命令: 
    Shell "c:\windows/system32\cmd.exe /c rd ""f:\5555""/s/q"
      

  3.   

    删除文件夹的方法:
    dim f,f2,strSubFold
    Set f = fs.GetFolder("\\dataapplication\welltex\data")
    Set strSubFold = f.SubFolders
    For Each f2 In strSubFold
        f2.Delete   ' 删除 \\dataapplication\welltex\data下面的所有的文件夹
    Next
      

  4.   


    有了如下的子程序,你的目录删除将变得非常简单,什么也不需要考虑了DelMyFolder "D:\aab\"                                      '这样可以
    DelMyFolder "D:\aab"                                       '这样也可以Public Sub DelMyFolder(MyDir As String)
               Dim Fso           If Right(MyDir, 1) = "\" Then                 
                  MyDir = Left(MyDir, Len(MyDir) - 1)        '如果没有此语句   且 MyDir="D:\aab\" ,MyDir目录将不能删除   
               End If
               Set Fso = CreateObject("Scripting.FileSystemobject")
               Fso.DeleteFolder MyDir, True
               Set Fso = Nothing
    End Sub
      

  5.   

    看看下面这个吧:C:\>rd/?
    删除一个目录。RMDIR [/S] [/Q] [drive:]path
    RD [/S] [/Q] [drive:]path    /S      除目录本身外,还将删除指定目录下的所有子目录和
                文件。用于删除目录树。    /Q      安静模式,带 /S 删除目录树时不要求确认C:\>要删除文件夹c:\1\2\3\4\5\6\7\8\9 ,只须下面一行(多简单。不管这个多级文件夹有多复杂,均可一次性删除
    !):

    Shell "c:\windows/system32\cmd.exe /c rd ""f:\1""/s/q"
      

  6.   

    告诉你 /c 的意思是把 rd 后面的字符串当作命令使用(字符串命令)!