|
本帖最后由 琪诺兔 于 2021-12-29 17:34 编辑
|
文件_枚举WEx | 整数型 | | |
欲寻找的目录 | 字节集 | | | | 欲寻找的文件名 | 字节集 | | | | 枚举子目录 | 逻辑型 | | | | 从零开始 | 逻辑型 | | | | 文件名组 | 字节集 | | | | 短文件名组 | 字节集 | | | | 路径组 | 字节集 | | | | 尺寸组 | 字节集 | | | | 创建时间组 | 字节集 | | | | 修改时间组 | 字节集 | | | | 访问时间组 | 字节集 | | | |
变量名 | 类 型 | 静态 | 数组 | 备 注 | 计数 | 整数型 | | | 找到文件信息 | 文件信息 | | | 日期时 | 系统时间戳 | | | 被寻找路径 | 字节集 | | | 欲寻找文件名 | 字节集 | | | 枚举句柄 | 整数型 | | | 文件名称 | 字节集 | | | 格式 | 字节集 | | | 下一个 | 逻辑型 | | | 子目录 | 字节集 | | | 尺寸 | 字节集 | | |
被寻找路径 = 删尾零W (欲寻找的目录 )如果真 (从零开始 )计数 = 0 如果真 (取字节集右边 (被寻找路径, 2 ) ≠ { 92, 0 })被寻找路径 = 被寻找路径 + { 92, 0 }如果真 (是否为空 (欲寻找的文件名 )) 欲寻找的文件名 = { 42, 0 }欲寻找文件名 = 删尾零W (欲寻找的文件名)枚举句柄 = 枚举第一个文件W (被寻找路径 + 欲寻找文件名 + { 0, 0 }, 找到文件信息 )如果真 (枚举句柄 = #INVALID_HANDLE_VALUE )返回 ( #INVALID_HANDLE_VALUE )循环判断首 ()文件名称 = 删尾零W (到字节集 (找到文件信息.文件名 )) 如果真 (取字节集左边 (格式, 2 ) = { 0, 0 })取字节集左边 (格式, 取字节集长度 (格式 ) - 2 )格式 = 删尾零W (到字节集 (找到文件信息.类型))如果真 (比较字节 (文件名称 + { 0, 0 }, { 46, 0, 0, 0 }) ≠ #NULL 且 比较字节 (文件名称 + { 0, 0 }, { 46, 0, 46, 0, 0, 0 }) ≠ #NULL )如果真 (枚举子目录 且 位与 (找到文件信息.文件属性, #FILE_ATTRIBUTE_DIRECTORY ) ≠ #NULL )子目录 = 被寻找路径 + 文件名称 + { 92, 0 }文件_枚举WEx (子目录, 欲寻找的文件名 )如果真 (位与 (找到文件信息.文件属性, #FILE_ATTRIBUTE_ARCHIVE ) ≠ #NULL )文件名称 = 文件名称 + { 0, 0 }计数 = 计数 + 1 如果真 (是否为空 (文件名组 )) 加入成员 (文件名组, 文件名称 )如果真 (是否为空 (短文件名组 )) 判断 (格式 = { })加入成员 (短文件名组, 文件名称 )加入成员 (短文件名组, 格式 + { 0, 0 })如果真 (是否为空 (路径组 )) 加入成员 (路径组, 被寻找路径 + 文件名称 )如果真 (是否为空 (尺寸组 )) 尺寸 = 取空白字节集 (32 )长度格式化文本W (取字节集数据 (到字节集 (找到文件信息.长度低位 ) + 到字节集 (找到文件信息.长度高位 ), #长整数型, ), 尺寸, 16 )加入成员 (尺寸组, 尺寸 )如果真 (是否为空 (创建时间组 )) 文件时间转系统时间戳 (找到文件信息.创建时间, 日期时 )加入成员 (创建时间组, 系统时间到文本 (日期时 )) 如果真 (是否为空 (修改时间组 )) 文件时间转系统时间戳 (找到文件信息.修改时间, 日期时 )加入成员 (修改时间组, 系统时间到文本 (日期时 )) 如果真 (是否为空 (访问时间组 )) 文件时间转系统时间戳 (找到文件信息.访问时间, 日期时 )加入成员 (访问时间组, 系统时间到文本 (日期时 )) 下一个 = 枚举下一个文件W (枚举句柄, 找到文件信息)循环判断尾 (下一个 )关闭枚举 (枚举句柄 )返回 (计数 )|
系统时间到文本 | 字节集 | | |
SYSTEMTIME | SYSTEMTIME | | | |
变量名 | 类 型 | 静态 | 数组 | 备 注 | 文本 | 文本型 | | | 回调 | 字节集 | | | 长度 | 整数型 | | |
文本 = 到文本 (SYSTEMTIME.年 ) + “/” + 到文本 (SYSTEMTIME.月 ) + “/” + 到文本 (SYSTEMTIME.日 ) + “ ” + 到文本 (SYSTEMTIME.时 ) + “:” + 到文本 (SYSTEMTIME.分 ) + “:” + 到文本 (SYSTEMTIME.秒 ) + “:” + 到文本 (SYSTEMTIME.毫 )长度 = 转换文字列_AToU (0, 0, 文本, -1, { }, 0 )回调 = 取空白字节集 (长度 × 2 )转换文字列_AToU (936, 0, 文本, -1, 回调, 长度 × 2 )返回 (回调 )i = 寻找字节集 (欲被处理的字节集, { 0, 0 }, )如果真 (i ≠ -1 )如果真 (i % 2 ≠ 0 )i = i - 1 返回 (取字节集左边 (欲被处理的字节集, i))返回 (欲被处理的字节集)
|
评分
-
查看全部评分
|