C#如何读取U盘插入的时间

如图:

通过检测注册表里的 "Enum\\USBSTOR",已经可以获取U盘的型号,但是如何检测到U盘的插入时间呢?

参考:
Extracting USB Artifacts from Windows 7
How to Analyze USB Device History in Windows
Windows 7 Registry Forensics: Part 5
Windows 7 Registry Forensics: Part 6
最重点打开注册表,在HKLM/System/CurrentControlSet\Enum\USB\下面找到相应的键,然后点右键导出,打出的文件个是选择txt的,打开后就能看到最后写入时间了。具体怎么找设备,你可以看看文章,也可以参考下面的文件,里面有不同的操作系统注册表相关信息所在的键的位置。
USB Drive Enclosure-Guide
文章里面也提到了USBDeview,我想你用的应该就是这个软件吧。

读取注册表最后写入时间,如果不想自己写代码,就用下面链接的类,直接DateTime dTime = RegQuery.lastWriteTime("注册表键");就可以了。
Class for RegQueryInfoKey pinvoke

根据上面参考的几篇文章,USB设备第一次接入的时间是在setupapi log (系统驱动盘\Windows\inf\setupapi.dev.log  for Windows Vista/7/8)(系统驱动盘\Windows\setupapi.log for Windows XP)这个文件里面。可以通过设备的序列号来搜索。
有篇文章提到这个文件里面的时间是电脑本地时间,不是UTC时间,所以如果要比较的话,需要转换一下。

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值