标题: [已结]如何将c:所有的txt写进 a.txt.?(用 vbs 来完成)
[打印本页]
作者: huzixuan
时间: 2007-4-8 00:14
标题: [已结]如何将c:所有的txt写进 a.txt.?(用 vbs 来完成)
如果用 vbs 来 遍历驱动器 c:
将 c:\ 的所有 txt 文本地址写进 a.txt ?
想看看 vbs 用什么样的办法可以完成?
谢谢
[
Last edited by huzixuan on 2007-4-11 at 06:23 AM ]
作者: huzixuan
时间: 2007-4-8 05:23
有人会吗?
作者: flyinspace
时间: 2007-4-8 06:00
你去看看欢乐时光病毒.
研究一下那个脚本就知道了。
作者: huzixuan
时间: 2007-4-10 23:51
搞不懂
作者: 3742668
时间: 2007-4-11 02:16
1.利用WMI:
Set oFSO = CreateObject("SCripting.FileSystemObject")
Set oFile = oFSO.OpenTextFile("a.txt",2,True)
For Each x In GetObject("winmgmts:").execquery("select * from CIM_DATAFILE where extension = 'txt' and drive = 'c:'")
oFile.WriteLine x.name
Next
oFile.Close
Set oFile = Nothing
Set oFSO = Nothing
2,传统的Scripting.FileSystemObject对象:
Set oFSO = CreateObject("Scripting.FileSystemObject")
Set oFolder = oFSO.GetFolder("c:\")
Set oFile = oFSO.OpenTextFile("a.txt",2,True)
GetFileName oFolder
oFile.Close
Set oFile = Nothing
Set oFSO = Nothing
Sub GetFileName(oFolder)
For Each tmpFile In oFolder.Files
If LCase(Right(tmpFile.Name,4)) = ".txt" Then
oFile.WriteLine tmpFile.Path
End If
Next
For Each tmpFolder In oFolder.SubFolders
GetFileName(tmpFolder)
Next
End Sub
其他一些组件也能完成类似的功能(Shell.Application等等),不过个人认为这上面两种方法无疑简单许多.