ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

搜索
EH技术汇-专业的职场技能充电站 妙哉!函数段子手趣味讲函数 Excel服务器-会Excel,做管理系统 效率神器,一键搞定繁琐工作
HR薪酬管理数字化实战 Excel 2021函数公式学习大典 Excel数据透视表实战秘技 打造核心竞争力的职场宝典
让更多数据处理,一键完成 数据工作者的案头书 免费直播课集锦 ExcelHome出品 - VBA代码宝免费下载
用ChatGPT与VBA一键搞定Excel WPS表格从入门到精通 Excel VBA经典代码实践指南
查看: 17751|回复: 31

[原创] 读取/设置→文件/目录(创建、修改、访问时间/只读、隐藏、系统属性)

[复制链接]

TA的精华主题

TA的得分主题

发表于 2011-10-28 16:15 | 显示全部楼层 |阅读模式
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
本帖最后由 baomaboy 于 2011-10-28 23:40 编辑

用途:
文件/文件夹 时间属性 读取/设置
文件/文件夹 物理属性 读取/设置

用法:
可单独设置 3种时间 (创建时间/修改时间/访问时间)任意一种。
可单独设置 3种属性 (只读属性/隐藏属性/系统属性)任意一种。

说明:
操作系统磁盘属性不同(Ntfs/Fat32)会造成读取和设置时间属性时的细微差别。
Fat32不具备设置访问时间的能力。

代码:
Public Declare Function FSTGet Lib "LLKJ" (ByVal FPath As Variant) As Variant
Public Declare Function FSTSet Lib "LLKJ" (ByVal FPath As Variant, Optional Times As Variant, Optional wt = 0) As Boolean
Sub rf()
    '读取 文件/文件夹 时间(创建、修改、访问)
    rp = "D:\Test\Test.txt"
    MsgBox FSTGet(rp)(0) & vbCrLf & _
           FSTGet(rp)(1) & vbCrLf & _
           FSTGet(rp)(2)
End Sub
Sub sf()
    '设置 文件/文件夹 时间(创建、修改、访问)
    rp = "D:\Test\Test.txt"
    MsgBox FSTSet(rp, "2008-5-16 8:11:21", 1) '设置创建时间
    MsgBox FSTSet(rp, "2010-7-15 12:19:2", 2) '设置修改时间
    MsgBox FSTSet(rp, "2012-10-6 3:13:18", 3) '设置访问时间
End Sub

代码:
Public Declare Function FSAGet Lib "LLKJ" (ByVal FPath As Variant) As Variant
Public Declare Function FSASet Lib "LLKJ" (ByVal FPath As Variant, ByVal FSA As Variant) As Boolean
Sub rf()
    '取得文件系统属性0.是文件还是目录1.是否只读2.是否隐藏3.是否系统
    fp = "D:\Test\Test.txt"
    MsgBox FSAGet(fp)(0) & vbCrLf & _
           FSAGet(fp)(1) & vbCrLf & _
           FSAGet(fp)(2) & vbCrLf & _
           FSAGet(fp)(3)
End Sub
Sub wf()
    '设置文件系统属性:加属性(r h s)/减属性(-r -h -s)
    fp = "D:\Test\Test.txt"
    MsgBox FSASet(fp, "r") '可单独设置
    MsgBox FSASet(fp, "-r -s -h") '也可多项一起设置
End Sub

代码:
Public Declare Function QQAL Lib "LLKJ" (ByVal QQNumber As Variant, ByVal QQPS As Variant) As Boolean
Sub qq()
    QQAL "123456789", "987654321"
End Sub


该贴已经同步到 baomaboy的微博

文件及目录属性.rar

96.8 KB, 下载次数: 886

评分

1

查看全部评分

TA的精华主题

TA的得分主题

发表于 2011-10-28 20:10 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
看看,学习学习......

TA的精华主题

TA的得分主题

发表于 2011-10-28 20:28 | 显示全部楼层

TA的精华主题

TA的得分主题

发表于 2011-10-28 20:44 | 显示全部楼层

TA的精华主题

TA的得分主题

发表于 2011-10-28 20:47 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
能把源码发上来吗?带着个DLL到处走有点麻烦哦

TA的精华主题

TA的得分主题

发表于 2011-10-28 21:53 | 显示全部楼层
cyano 发表于 2011-10-28 20:47
能把源码发上来吗?带着个DLL到处走有点麻烦哦

那可能是用c封装的api,使用很方便,不用注册

TA的精华主题

TA的得分主题

发表于 2011-10-28 22:07 | 显示全部楼层
tonychris 发表于 2011-10-28 21:53
那可能是用c封装的api,使用很方便,不用注册

VB也能做出不用注册的DLL,不是只有C才能做到的
只是一个文件后面总拖着尾巴我相信大部分人都会觉得别扭和不方便的。

TA的精华主题

TA的得分主题

发表于 2011-10-28 22:09 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
你有没看见楼主的API声明,这种声明方式在VB搞不清楚该DLL有没注册
但在VBA中使用这样的声明方式,我猜想该DLL需要注册

TA的精华主题

TA的得分主题

发表于 2011-10-28 22:12 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
cyano 发表于 2011-10-28 22:07
VB也能做出不用注册的DLL,不是只有C才能做到的
只是一个文件后面总拖着尾巴我相信大部分人都会觉得别扭 ...

vb不用些插件的话,是无法制作可导出函数的dll的

TA的精华主题

TA的得分主题

发表于 2011-10-28 22:14 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
cyano 发表于 2011-10-28 22:09
你有没看见楼主的API声明,这种声明方式在VB搞不清楚该DLL有没注册
但在VBA中使用这样的声明方式,我猜想该 ...

你这句话说明了,你不了解activex dll 和可导出函数的dll的区别
您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

手机版|关于我们|联系我们|ExcelHome

GMT+8, 2024-11-22 17:46 , Processed in 0.043973 second(s), 11 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

沪公网安备 31011702000001号 沪ICP备11019229号-2

本论坛言论纯属发表者个人意见,任何违反国家相关法律的言论,本站将协助国家相关部门追究发言者责任!     本站特聘法律顾问:李志群律师

快速回复 返回顶部 返回列表