Hi,
if I open a file in kernel mode on XP with:
RtlInitUnicodeString(&FileName, L"\\??\\c:\\freeldr.ini");
InitializeObjectAttributes(&ObjectAttributes,
&FileName,
OBJ_CASE_INSENSITIVE,
NULL,
NULL);
Status = ZwOpenFile(&FileHandle,
GENERIC_READ,
&ObjectAttributes,
&IoStatusBlock,
0,
0 /* FILE_SYNCHRONOUS_IO_NONALERT*/);
Status = ObReferenceObjectByHandle(FileHandle,
GENERIC_READ,
IoFileObjectType,
KernelMode,
(PVOID)&FileObject,
NULL);
I see FileObje->Flags is FO_HANDLE_CREATED|FO_CACHE_SUPPORTED. Than I
create a stream file object from FileObject->DeviceObect:
StreamFileObject = IoCreateStreamFileObject(NULL,
FileObject->DeviceObject);
I see StreamFileObject->Flags is FO_HANDLE_CREATED|FO_STREAM_FILE.
- Hartmut
Alex Ionescu wrote:
ion(a)svn.reactos.com wrote:
Make the remaning code match the current
formatting instead of being
really ugly,
and make some changes to IoCreateFileStreamObject
(which is wrong
anyways, since it's doing what *Lite should do)
This breaks usetup/vfat/whatever. I'll fix it until I have time to
look at the whole picture. (Well actually I'll add back the incorrect
parts of the code :P)
Best regards,
Alex Ionescu
_______________________________________________
Ros-dev mailing list
Ros-dev(a)reactos.com
http://reactos.com:8080/mailman/listinfo/ros-dev