2011-02-18 27 views
0

我使用的是相当优雅的Oracle商业智能软件,我们经常遇到的问题是清除用户系统上的特定数据,然后与服务器同步以再次下载数据。我有一个我正在处理的vbs脚本,它删除了关键目录,并重命名了其他并停止了服务等。VBS使用FileSystemObject删除目录中的文件和异常?

我卡在哪里是在一个特定的目录中。使用FileSystemObject,除了单个文件夹,删除目录中的每个文件最简单的方法是什么?

所以,对于这个具体的例子,我有C:\ OracleBIData \同步\ CONFIG

,我想删除一切的“同步”目录内,与config目录例外。任何接受者?

回答

1

段:

Option explicit 

Const folderspec = "C:\OracleBIData\sync" 
Const excludeFolder = "C:\OracleBIData\sync\config" 

deleteSubFolders CreateObject("Scripting.FileSystemObject").GetFolder(folderspec), excludeFolder 

Public Sub deleteSubFolders(byRef MyFolder, exclFolder) 
    Dim sf 
    For Each sf in MyFolder.SubFolders 
     If not (lCase(sf.Path) = lCase(exclFolder)) Then 
      deleteSubFolders sf, exclFolder 
      sf.Delete 
     End If 
    Next 
End Sub 

它不会删除excludeFolder下的文件夹。

+0

AutomatedChaos,我在这一个晚了。虽然我能解决我的小问题,但我只想说谢谢你的答案。有一些不幸的家庭发展,并没有真正回到这个线程。 – Zer0mod 2011-04-09 01:00:14

0

蛮力是我能想到的。

浏览目录项目,但项目,并删除它,如果它不是配置。或者如果这个目录有很多很多很多的文件,首先运行删除一个*。 ,b。*,d *。* 25次,然后遍历剩下的项目。

相关问题