Coder
驱动牛犊
驱动牛犊
  • 注册日期2002-11-18
  • 最后登录2011-03-09
  • 粉丝0
  • 关注0
  • 积分8分
  • 威望34点
  • 贡献值0点
  • 好评度23点
  • 原创分0分
  • 专家分0分
阅读:1673回复:3

如何在sfilter中得到volumn名和完整文件名

楼主#
更多 发布于:2004-12-08 16:18
小弟最近在学习sfilter过滤驱动,遇到了几个问题:
1)sfilter在SfMountCompletion创建自己的设备与volumn设备进行挂接,怎么样能从IRP相关的参数读出目标volumn设备名呢?如devicehardvolumn1或者C:相关的参数。上述两个参数中,"c:"是卷设备的连接符,怎样从volumn设备得到其连接符呢?

2)我想记录读写操作的完整文件名,但是试了以下方法都不能成功:
   a)RtlVolumeDeviceToDosName (irpSp->FileObject->DeviceObject, dosname )//一加载就蓝屏。
   b)irpSp->FileObject->FileName//没有盘符
   c)ObQueryNameString函数//得到的volumn设备卷名。

小弟先谢了!

最新喜欢:

likepslikeps
paladinii
驱动中牛
驱动中牛
  • 注册日期2003-10-28
  • 最后登录2012-03-09
  • 粉丝0
  • 关注0
  • 积分282分
  • 威望74点
  • 贡献值0点
  • 好评度23点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2005-01-28 19:36
我也有同样问题,不知道楼主解决了吗?能不能把经验共享一下!!!
Ideas for life!
yunyanrong
驱动小牛
驱动小牛
  • 注册日期2003-04-18
  • 最后登录2013-03-02
  • 粉丝0
  • 关注0
  • 积分1040分
  • 威望457点
  • 贡献值1点
  • 好评度90点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2005-06-17 10:19
把这个帖子顶起来。

希望有个良好解答!
tooflat
论坛版主
论坛版主
  • 注册日期2002-07-08
  • 最后登录2014-03-11
  • 粉丝2
  • 关注0
  • 积分1007分
  • 威望551点
  • 贡献值3点
  • 好评度476点
  • 原创分0分
  • 专家分0分
地板#
发布于:2005-06-20 09:28
在SfFsControlMountVolume中调用RtlVolumeDeviceToDosName可以得到盘符(搜索这个版,应该有很多这样的帖子)
得到设备名,在sfilter的SfFsControlMountVolume已经有代码,
想得到完整的文件名,最好在create的时候处理,因为这时候在FileObject中有文件名,否则你只能在read,write的时候向文件系统发送irp查询了
游客

返回顶部