litth
驱动牛犊
驱动牛犊
  • 注册日期2001-04-26
  • 最后登录2018-05-30
  • 粉丝0
  • 关注0
  • 积分4分
  • 威望110点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
  • 社区居民
阅读:1504回复:6

我在Driver里如何读硬盘上的文件如:c:\\abc.txt

楼主#
更多 发布于:2003-06-13 13:06
各位老大:
我在Driver里想读硬盘上的文件如:c:\\abc.txt
应该怎么办:

最新喜欢:

baoyibao99baoyib...
------------------------------------ 天涯飞云 http://www.my66.com
wowocock
VIP专家组
VIP专家组
  • 注册日期2002-04-08
  • 最后登录2016-01-09
  • 粉丝16
  • 关注2
  • 积分601分
  • 威望1651点
  • 贡献值1点
  • 好评度1227点
  • 原创分1分
  • 专家分0分
沙发#
发布于:2003-06-13 13:29
zwcreatefile
zwreadfile
zwclose
花开了,然后又会凋零,星星是璀璨的,可那光芒也会消失。在这样 一瞬间,人降生了,笑者,哭着,战斗,伤害,喜悦,悲伤憎恶,爱。一切都只是刹那间的邂逅,而最后都要归入死亡的永眠
litth
驱动牛犊
驱动牛犊
  • 注册日期2001-04-26
  • 最后登录2018-05-30
  • 粉丝0
  • 关注0
  • 积分4分
  • 威望110点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
  • 社区居民
板凳#
发布于:2003-06-13 13:38
我例子吗
ZwCreateFile()好像普通磁盘文件不是,中能创建驱动

NTSTATUS status;
PIO_STACK_LOCATION  irpSp;
        HANDLE hCdr;
        OBJECT_ATTRIBUTES  ObjectAttributes;
        IO_STATUS_BLOCK IoStatusBlock;
        UNICODE_STRING usFileName;

        RtlInitUnicodeString(&usFileName,L\"f:\\\\abc.iso\");
        
        InitializeObjectAttributes(
         &ObjectAttributes,
         &usFileName,
         0,
         NULL,
         NULL);        
        
        status=ZwOpenFile(
               &hCdr,
               FILE_READ_DATA,
        &ObjectAttributes,
        &IoStatusBlock,
        FILE_SHARE_READ,
       FILE_DIRECTORY_FILE);

Irp->IoStatus.Status = status;
irpSp = IoGetCurrentIrpStackLocation( Irp );

DbgPrint(\"CdrReading. status=%u\\n\",status);
ZwClose(hCdr);

结果是失败的.
------------------------------------ 天涯飞云 http://www.my66.com
litth
驱动牛犊
驱动牛犊
  • 注册日期2001-04-26
  • 最后登录2018-05-30
  • 粉丝0
  • 关注0
  • 积分4分
  • 威望110点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
  • 社区居民
地板#
发布于:2003-06-13 13:40
有例子吗
ZwCreateFile()好像普通磁盘文件不是,中能创建驱动

NTSTATUS status;
PIO_STACK_LOCATION  irpSp;
        HANDLE hCdr;
        OBJECT_ATTRIBUTES  ObjectAttributes;
        IO_STATUS_BLOCK IoStatusBlock;
        UNICODE_STRING usFileName;

        RtlInitUnicodeString(&usFileName,L\"f:\\\\abc.iso\");
        
        InitializeObjectAttributes(
         &ObjectAttributes,
         &usFileName,
         0,
         NULL,
         NULL);        
        
        status=ZwOpenFile(
               &hCdr,
               FILE_READ_DATA,
        &ObjectAttributes,
        &IoStatusBlock,
        FILE_SHARE_READ,
       FILE_DIRECTORY_FILE);

Irp->IoStatus.Status = status;
irpSp = IoGetCurrentIrpStackLocation( Irp );

DbgPrint(\"CdrReading. status=%u\\n\",status);
ZwClose(hCdr);

结果是失败的.
------------------------------------ 天涯飞云 http://www.my66.com
swf2003
驱动中牛
驱动中牛
  • 注册日期2003-02-13
  • 最后登录2011-10-28
  • 粉丝0
  • 关注0
  • 积分4分
  • 威望22点
  • 贡献值0点
  • 好评度20点
  • 原创分0分
  • 专家分0分
地下室#
发布于:2003-06-13 14:54
文件名要安这种格式 “\\\\DosDevices\\\\C:\\\\abc.txt” 。
你的认可是对我最大的鼓励!
slummer
驱动牛犊
驱动牛犊
  • 注册日期2003-06-23
  • 最后登录2016-01-07
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
5楼#
发布于:2003-08-29 21:13
你可以参照ds自带的例子file
都市贫民
LIUTANG
驱动大牛
驱动大牛
  • 注册日期2001-03-30
  • 最后登录2020-12-27
  • 粉丝0
  • 关注0
  • 积分8分
  • 威望58点
  • 贡献值0点
  • 好评度12点
  • 原创分0分
  • 专家分0分
  • 社区居民
6楼#
发布于:2003-08-29 23:17
文件名要安这种格式 “\\\\DosDevices\\\\C:\\\\abc.txt” 。
 


这位兄弟说的是对的,就是这么来打开,其实DDK里的函数除了文件名使用UNICODE并且名字比较古怪之外,别的函数用起来和API的其实也没什么太大的差别。
游客

返回顶部