阅读:1504回复:6
我在Driver里如何读硬盘上的文件如:c:\\abc.txt
各位老大:
我在Driver里想读硬盘上的文件如:c:\\abc.txt 应该怎么办: |
|
最新喜欢:baoyib...
|
沙发#
发布于:2003-06-13 13:29
zwcreatefile
zwreadfile zwclose |
|
|
板凳#
发布于: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); 结果是失败的. |
|
|
地板#
发布于: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); 结果是失败的. |
|
|
地下室#
发布于:2003-06-13 14:54
文件名要安这种格式 “\\\\DosDevices\\\\C:\\\\abc.txt” 。
|
|
|
5楼#
发布于:2003-08-29 21:13
你可以参照ds自带的例子file
|
|
|
6楼#
发布于:2003-08-29 23:17
文件名要安这种格式 “\\\\DosDevices\\\\C:\\\\abc.txt” 。 这位兄弟说的是对的,就是这么来打开,其实DDK里的函数除了文件名使用UNICODE并且名字比较古怪之外,别的函数用起来和API的其实也没什么太大的差别。 |
|