make2855 发表于 2009-5-29 23:10:22

关于“FileFindNextFile”函数的“@extended”,还是BUG!

本帖最后由 make2855 于 2009-6-4 19:09 编辑

; Shows the filenames of all files in the current directory
$search = FileFindFirstFile(@SystemDir & "\*.*")

; Check if the search was successful
If $search = -1 Then
        MsgBox(0, "Error", "No files/directories matched the search pattern")
        Exit
EndIf

While 1
        $file = FileFindNextFile($search)
        If @error Then ExitLoop
        If @extended Then
                MsgBox(4096, "Dir:", $file)
        Else
                MsgBox(4096, "File:", $file)
        EndIf
WEnd

; Close the search handle
FileClose($search)第一个搜索到的不论是文件或者文件夹@extended都会返回0
不知道是BUG还是我理解错误?

===========================================
我又找到 “_FileListToArray.au3”,这可是官方写的,没错吧,我把路径改一下。#Include <File.au3>
#Include <Array.au3>
$FileList=_FileListToArray(@systemDir,'*',1)
If @Error=1 Then
        MsgBox (0,"","No Files\Folders Found.")
        Exit
EndIf
_ArrayDisplay($FileList,"$FileList")$FileList 明明是目录来着!!!

===========================================
换台机器就可以了,看来是系统哪个地方没弄好,出了怪毛病。。。
===========================================
原来其实还是BUG,绝对是BUG,我换台机器了因为那台机器是封装的,所以第一个搜索到的是文件而不是文件夹,我甚至还到2003的服务器上面去测试,结果是一样的.
请thesnow这样测试:在c盘新建一个空文件夹,然后再在文件夹里面新建一个文件夹.然后再:#Include <File.au3>
#Include <Array.au3>
$FileList=_FileListToArray('c:\新建文件夹','*',1)
If @Error=1 Then
        MsgBox (0,"","No Files\Folders Found.")
        Exit
EndIf
_ArrayDisplay($FileList,"$FileList")这样搜索到的第一个文件就变成了文件夹,哈哈!!!

thesnow 发表于 2009-6-2 23:15:20

我这里正常哇.

menfan1 发表于 2009-6-3 08:28:17

我这里也正常哦,是否和环境有关系呢?

make2855 发表于 2009-6-3 13:44:03

对不起,我换了另外一个机器就可以了,这是为什么?:face (3):

make2855 发表于 2009-6-4 19:08:46

本帖最后由 make2855 于 2009-6-4 19:10 编辑

原来其实还是BUG,绝对是BUG,我换台机器了因为那台机器是封装的,所以第一个搜索到的是文件而不是文件夹,我甚至还到2003的服务器上面去测试,结果是一样的.
请thesnow这样测试:在c盘新建一个空文件夹,然后再在文件夹里面新建一个文件夹.然后再:
#Include <File.au3>

#Include <Array.au3>

$FileList=_FileListToArray('c:\新建文件夹','*',1)

If @Error=1 Then

      MsgBox (0,"","No Files\Folders Found.")

      Exit

EndIf

_ArrayDisplay($FileList,"$FileList")
复制代码这样搜索到的第一个文件就变成了文件夹,哈哈!!!
页: [1]
查看完整版本: 关于“FileFindNextFile”函数的“@extended”,还是BUG!