【问题标题】:Combine FindFirstFile with GetFileSize / GetFileSizeEx to increase performance (kernel32)将 FindFirstFile 与 GetFileSize / GetFileSizeEx 结合以提高性能(kernel32)
【发布时间】:2013-05-29 13:58:01
【问题描述】:

我正在使用 FindFirstFileFindNextFile (kernel32) 来获取文件夹和文件 (c# Pinvoke)。 System.IO 太慢,不支持超过 250 个字符的路径。

是否可以使用FindNextFile 返回的句柄(以任何方式)来获取文件的字节长度?

当前尝试返回INVALID_HANDLE。我认为原因是目录回调而不是 createfile 回调。

我想避免再次调用CreateFile 来“两次”获取文件句柄;很慢。

谢谢。

【问题讨论】:

标签: c# pinvoke .net kernel32


【解决方案1】:

FindNextFile 不返回句柄。不知道你为什么会这样认为。

WIN32_FIND_DATA 包含文件大小。这个结构正在由FindNextFile 填充。

【讨论】:

    猜你喜欢
    • 2012-07-05
    • 1970-01-01
    • 1970-01-01
    • 2014-08-12
    • 2012-06-17
    • 2017-04-13
    • 2018-09-19
    • 2014-12-17
    • 1970-01-01
    相关资源
    最近更新 更多