fracker
驱动太牛
驱动太牛
  • 注册日期2001-06-28
  • 最后登录2021-03-30
  • 粉丝0
  • 关注0
  • 积分219分
  • 威望81点
  • 贡献值0点
  • 好评度23点
  • 原创分0分
  • 专家分1分
  • 社区居民
阅读:1364回复:8

关于文件系统开发的问题

楼主#
更多 发布于:2002-01-31 13:09
在我FSD中,我响应IRP_MJ_QUERY_VOLUME_INFORMATION,
调用pISL = IoGetCurrentIrpStackLocation( pIrp );
switch( pISL->Parameters.QueryVolume.FsInformationClass ) {
   case FileFsLabelInformation:
      break;
   case ...
      break;
   default:
}
问题是在IFS Kit 中pISL->Parameters.QueryVolume.FsInformationClass 的值只能是1-7的,而我在DOS窗口里面dir的时候,看到她传过来8,为什么?由此而导致DOS窗口里面列不出来目录.

大侠请赐教!
soso
驱动牛犊
驱动牛犊
  • 注册日期2001-08-22
  • 最后登录2008-10-16
  • 粉丝0
  • 关注0
  • 积分26分
  • 威望5点
  • 贡献值0点
  • 好评度1点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2002-01-31 13:54
看一看NTDDK.h或者ntifs.h
一共9个参数!
用容乃大,无欲则刚
fracker
驱动太牛
驱动太牛
  • 注册日期2001-06-28
  • 最后登录2021-03-30
  • 粉丝0
  • 关注0
  • 积分219分
  • 威望81点
  • 贡献值0点
  • 好评度23点
  • 原创分0分
  • 专家分1分
  • 社区居民
板凳#
发布于:2002-01-31 14:08
不会吧?我看了ntifs.h里面,那是一个枚举的数据类型,里面总共有8项哦,我的IFS Kit是从本站下载的,还到微软去下了一个fix,不过那只有两个库,跟这个没什么关系啊。难道你的会比我的多?要不把你的ntifs.h发给我看看?谢谢,可惜我没分,要不然就给你分了。
fracker
驱动太牛
驱动太牛
  • 注册日期2001-06-28
  • 最后登录2021-03-30
  • 粉丝0
  • 关注0
  • 积分219分
  • 威望81点
  • 贡献值0点
  • 好评度23点
  • 原创分0分
  • 专家分1分
  • 社区居民
地板#
发布于:2002-01-31 14:15
我的ntifs.h是这个样子的,你的跟我的有区别吗?


//
// Define the file system information class values
//
// WARNING:  The order of the following values are assumed by the I/O system.
//           Any changes made here should be reflected there as well.

typedef enum _FSINFOCLASS {
    FileFsVolumeInformation       = 1,
    FileFsLabelInformation,      // 2
    FileFsSizeInformation,       // 3
    FileFsDeviceInformation,     // 4
    FileFsAttributeInformation,  // 5
    FileFsControlInformation,    // 6
    FileFsReserved0,             // 7
    FileFsMaximumInformation
} FS_INFORMATION_CLASS, *PFS_INFORMATION_CLASS;

// end_ntddk end_nthal
//
// NtQuery[Set]VolumeInformationFile types:
//
//  FILE_FS_LABEL_INFORMATION
//  FILE_FS_VOLUME_INFORMATION
//  FILE_FS_SIZE_INFORMATION
//  FILE_FS_DEVICE_INFORMATION
//  FILE_FS_ATTRIBUTE_INFORMATION
//  FILE_FS_CONTROL_INFORMATION
//

typedef struct _FILE_FS_LABEL_INFORMATION {
    .......
} FILE_FS_LABEL_INFORMATION, *PFILE_FS_LABEL_INFORMATION;

typedef struct _FILE_FS_VOLUME_INFORMATION {
    .......
} FILE_FS_VOLUME_INFORMATION, *PFILE_FS_VOLUME_INFORMATION;

typedef struct _FILE_FS_SIZE_INFORMATION {
    .......
} FILE_FS_SIZE_INFORMATION, *PFILE_FS_SIZE_INFORMATION;

typedef struct _FILE_FS_DEVICE_INFORMATION {
    .......
} FILE_FS_DEVICE_INFORMATION, *PFILE_FS_DEVICE_INFORMATION;     // ntddk nthal
                                                                // ntddk nthal
typedef struct _FILE_FS_ATTRIBUTE_INFORMATION {
    .......
} FILE_FS_ATTRIBUTE_INFORMATION, *PFILE_FS_ATTRIBUTE_INFORMATION;
soso
驱动牛犊
驱动牛犊
  • 注册日期2001-08-22
  • 最后登录2008-10-16
  • 粉丝0
  • 关注0
  • 积分26分
  • 威望5点
  • 贡献值0点
  • 好评度1点
  • 原创分0分
  • 专家分0分
地下室#
发布于:2002-01-31 14:17
typedef enum _FSINFOCLASS {
    FileFsVolumeInformation       = 1,
    FileFsLabelInformation,      // 2
    FileFsSizeInformation,       // 3
    FileFsDeviceInformation,     // 4
    FileFsAttributeInformation,  // 5
    FileFsControlInformation,    // 6
    FileFsFullSizeInformation,   // 7
    FileFsObjectIdInformation,   // 8
    FileFsMaximumInformation
} FS_INFORMATION_CLASS, *PFS_INFORMATION_CLASS;
用容乃大,无欲则刚
fracker
驱动太牛
驱动太牛
  • 注册日期2001-06-28
  • 最后登录2021-03-30
  • 粉丝0
  • 关注0
  • 积分219分
  • 威望81点
  • 贡献值0点
  • 好评度23点
  • 原创分0分
  • 专家分1分
  • 社区居民
5楼#
发布于:2002-01-31 14:27
倒!
还真不一样,能把后面对应的结构贴给我吗?我自己加到头文件里面算了。谢谢!
soso
驱动牛犊
驱动牛犊
  • 注册日期2001-08-22
  • 最后登录2008-10-16
  • 粉丝0
  • 关注0
  • 积分26分
  • 威望5点
  • 贡献值0点
  • 好评度1点
  • 原创分0分
  • 专家分0分
6楼#
发布于:2002-01-31 14:39
ntddk.h\\wdm.h\\ntifs.h中的该结构都是一样的。不知道你的DDK是那样!
用容乃大,无欲则刚
matt
驱动中牛
驱动中牛
  • 注册日期2001-07-24
  • 最后登录2016-02-25
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
7楼#
发布于:2002-01-31 14:44
See   NTDDK.H
System Internals http://sys.xiloo.com
fracker
驱动太牛
驱动太牛
  • 注册日期2001-06-28
  • 最后登录2021-03-30
  • 粉丝0
  • 关注0
  • 积分219分
  • 威望81点
  • 贡献值0点
  • 好评度23点
  • 原创分0分
  • 专家分1分
  • 社区居民
8楼#
发布于:2002-01-31 14:58
我的确实不一样,原来是我安装的时候把NT4IFS Kit和2K IFS Kit都选了,所以没有这一项,卸掉了重新安装,怪现状没有了,谢谢两位!
游客

返回顶部