了解文件夹是否指定了文件类型的最佳方法

时间:2011-09-24 22:15:30

标签: vb6 directory dir

我在VB6中有一个循环过程,它探索指定文件路径中的所有文件夹。 然后我需要知道每个检测到的文件夹是否包含MP3文件。 我不想使用dir命令,因为它占用了大量资源。 我已尝试使用FSO,API等进行此操作,但我找不到解决方案。

感谢您的帮助。

2 个答案:

答案 0 :(得分:4)

VB6的Dir $()函数是FindFirstFile和朋友的一个很好的包装器。我不确定为什么你认为FSO会更轻或更快。

Dir $()的最大严重限制是它是一个ANSI函数,当一个正在进行而没有重置第一个搜索的状态时,它不能被第二次搜索“中断”。

“占用大量资源”是什么意思呢?

我在DirLister lightweight Dir() wrapper发布了一个包装过程的类。

答案 1 :(得分:0)

您是否尝试过FindFirstFile API函数?这应该是你最好的一击。在codeproject A Faster Directory Enumerator

中有一个C#示例

VB签名如下:

<DllImport("kernel32.dll", CharSet := CharSet.Auto)> _
Private Shared Function FindFirstFile(ByVal lpFileName As String, ByRef lpFindFileData As WIN32_FIND_DATA) As IntPtr
End Function

这是一个示例VB实现http://www.ask-4it.com/how-to-use-findfirstfile-win32-api-from-visual-basic-code-2-ca.html

您还可以找到有关API here使用情况的精彩微软文章。