pub struct WindowsFileObject<'a, Driver>{ /* private fields */ }
Expand description
A Windows file object.
A file object is a kernel structure that represents an open file or device in the Windows Object Manager. It contains metadata about the file, its access permissions, and associated device or volume.
§Implementation Details
Corresponds to _FILE_OBJECT
.
Implementations§
Source§impl<'a, Driver> WindowsFileObject<'a, Driver>
impl<'a, Driver> WindowsFileObject<'a, Driver>
Sourcepub fn new(vmi: VmiState<'a, Driver, WindowsOs<Driver>>, va: Va) -> Self
pub fn new(vmi: VmiState<'a, Driver, WindowsOs<Driver>>, va: Va) -> Self
Creates a new Windows file object.
Sourcepub fn device_object(&self) -> Result<WindowsObject<'a, Driver>, VmiError>
pub fn device_object(&self) -> Result<WindowsObject<'a, Driver>, VmiError>
Returns the device object associated with the file object.
§Implementation Details
Corresponds to _FILE_OBJECT.DeviceObject
.
Sourcepub fn full_path(&self) -> Result<String, VmiError>
pub fn full_path(&self) -> Result<String, VmiError>
Constructs the full path of a file from its FILE_OBJECT
.
This function first reads the DeviceObject
field of the FILE_OBJECT
structure. Then it reads the ObjectNameInfo
of the DeviceObject
and its directory. Finally, it concatenates the device directory
name, device name, and file name.
§Implementation Details
Corresponds to _FILE_OBJECT.DeviceObject.NameInfo.Name
concatenated
with _FILE_OBJECT.FileName
.