我需要获取目录中所有文件的名称,我目前正在使用此代码:
Dim File As String
File = Dir$(Environ("AppData") & "\*.exe")
Do While Len(File)
MsgBox "Deleting: " & Environ("AppData") & "\" & File
Kill Environ("AppData") & "\" & File
File = Dir$
Loop
这样可以正常工作,但它不显示隐藏/系统文件,或者除了“普通”以外的任何属性的文件,如何列出文件而不管其属性?
我也试过这个,结果相同:
Kill Environ("AppData") & "\*.*"
答案 0 :(得分:2)
我几乎总是将Microsoft Scripting Runtime用于VB6的文件I / O.它只是做得更多,它做得更好,更容易。一个小小的缺点是你的VB程序现在依赖于Scripting Runtime DLL(scrrun.dll
),你应该在VB6 IDE中添加它作为参考。
以下是删除文件夹中所有文件的示例。
' Note: This code is untested.
Sub Main()
DeleteAllFilesInFolder Environ("App_Data")
End Sub
Sub DeleteAllFilesInFolder(strFolder As String)
Dim fso As Scripting.FileSystemObject
Dim objFolder As Scripting.Folder
Dim objFile As Scripting.File
Set fso = New Scripting.FileSystemObject
Set objFolder = fso.GetFolder(strFolder)
For Each objFile in objFolder.Files
objFile.Delete force:=True
Next
End Sub
答案 1 :(得分:2)
Dir函数可以为属性采用第二个参数:
File = Dir$(Environ("AppData") & "\*.exe", vbHidden & vbSystem)
您可以了解有关Dir函数here的更多信息。