zhangleierli
驱动小牛
驱动小牛
  • 注册日期2007-01-31
  • 最后登录2017-05-24
  • 粉丝1
  • 关注0
  • 积分3分
  • 威望158点
  • 贡献值0点
  • 好评度146点
  • 原创分0分
  • 专家分0分
  • 社区居民
阅读:2152回复:3

有什么函数能把\device\harddiskvolume1转为c:这种形式?

楼主#
更多 发布于:2008-02-22 14:44
从文件句柄里能得到文件的路径,但是盘符是用\device\harddiskvolumeX\ 表示的,我想把它转为c:这种形式,以让应用层来使用。有转换的函数或方法么?
geland
驱动牛犊
驱动牛犊
  • 注册日期2003-12-28
  • 最后登录2016-01-09
  • 粉丝0
  • 关注0
  • 积分25分
  • 威望251点
  • 贡献值0点
  • 好评度54点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2008-02-22 22:11
try IoVolumeDeviceToDosName
gongxp123456
驱动牛犊
驱动牛犊
  • 注册日期2004-12-15
  • 最后登录2013-10-10
  • 粉丝0
  • 关注0
  • 积分617分
  • 威望383点
  • 贡献值1点
  • 好评度59点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2008-02-23 15:51
status = FltGetDiskDeviceObject( FltObjects->Volume, &devObj );
    if (NT_SUCCESS(status)) {
        status = RtlVolumeDeviceToDosName( devObj, &Name );
        if( NT_SUCCESS( status ))
        {
            //KdPrint(("得到了卷名:%ws",(&Name)->Buffer));
            if (RtlCompareUnicodeString( &Name, &CDISK, TRUE ) == 0)
            {
                KdPrint(("附加到了卷:%wZ\n",&Name));
                return STATUS_SUCCESS;
            }
        }
        //else KdPrint(("得到卷名失败!"));
    }
jl2004
驱动小牛
驱动小牛
  • 注册日期2007-04-10
  • 最后登录2011-02-22
  • 粉丝0
  • 关注0
  • 积分21分
  • 威望276点
  • 贡献值0点
  • 好评度129点
  • 原创分0分
  • 专家分0分
地板#
发布于:2008-03-07 11:29
太爽了
向前,向前,向前....
游客

返回顶部