windows 中如何监控文件的打开操作,当一个文件被打开时,就能感知到?

1 天前
 skylord

这个问题比较好的实现方式是,通过 Minifilter 文件过滤驱动来监控,但是公司的电脑全都没有管理员权限,没办法安装运行驱动,导致这个方案没法实现。 除此之外,使用 ReadDirectoryChangesW 函数也没办法监控到,windows 好像不更新 last access 时间。还有个 Windows 事件跟踪 (ETW),这个需要管理员权限也不行。 有没有什么不需要管理员权限的监控方案?

1933 次点击
所在节点    Windows
16 条回复
oisadfo
21 小时 31 分钟前
没有权限没法
crab
21 小时 12 分钟前
微软提供的 Procmon 也要管理员权限。
skylord
19 小时 34 分钟前
@oisadfo 是啊,没有管理员权限就很蛋疼
ysc3839
18 小时 16 分钟前
怀疑是 X-Y Problem https://coolshell.cn/articles/10804.html
建议直接说原始需求
yulon
17 小时 28 分钟前
没权限大概只能轮询文件的访问时间,不准,而且伤机械硬盘,固态还好
beck8
16 小时 28 分钟前
监控更改好实现,只监控个打开,貌似只能用一些奇技淫巧之类的。比如 linux 的 lsof
julyclyde
16 小时 24 分钟前
@beck8 lsof 只能看当前状态不能看“事件”
beck8
15 小时 31 分钟前
@julyclyde 所以是奇技淫巧,比对状态变化
skylord
14 小时 30 分钟前
@ysc3839 这个就是原始需求,公司要开发一个智能助手,有一个需求就是,感知到用户打开文件时,可以提示用户给文件做摘要总结
charles0
13 小时 38 分钟前
没有管理员权限基本上不能弄
Leon6868
13 小时 2 分钟前
@skylord #9 转换一下思路,需要做总结的文件一般是 PDF 和 Office 文件,所以监听常见的文档编辑软件和浏览器的窗口标题,然后查找相应的文件
jptx
12 小时 29 分钟前
@skylord #9 或者做成 office 插件的形式,让公司统一安装?
ysc3839
10 小时 57 分钟前
@skylord 用户打开文件然后提示的话,可以考虑用文件资源管理器的扩展来实现,印象中是可以分用户安装的,不需要管理员权限。
这么做的话如果是在别的程序里打开可能检测不到,但也基本符合需求。
codehz
10 小时 45 分钟前
直接注册成所有文件的默认打开方式,打开前拦截一下就可以了()
laminux29
10 小时 42 分钟前
你这需求肯定要管理员权限的,建议走正规流程,和上级说一下情况,让公司给你管理员权限。
Ackvincent
58 分钟前
@skylord hook 一下关键函数,队所有文件都监控的话肯定要在操作系统内核中做文章了。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/1175906

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX