flat assembler
Message board for the users of flat assembler.
![]() |
Author |
|
revolution 28 May 2008, 09:24
A1: I would imagine the flags do as they suggest. I see no reason to doubt it. But you can open the physical disk directly in Windows using \\.\PhysicalDriveN (N=0, 1, 2, etc.) and a logical drive using \\.\X: (X=A, B, C etc.).
A2: AFAIK you need to get a program that understands the NTFS format, then you can simply search the directory structures and pinpoint your file location. But remember that NTFS has a habit of storing some smaller files directly in the directory entry, something to keep in mind if you write your own locator app. And don't forget about the meta data also (if you need it). |
|||
![]() |
|
ManOfSteel 28 May 2008, 21:08
Thanks for the fast reply.
1. Would I still have to FlushFileBuffers after using CreateFile with the FILE_FLAG_NO_BUFFERING flag or is it redundant since in theory no buffering or caching was done? 2. I'm not writing a disk editor and I don't need to know the physical location of the file within my code. I just hoped there would be such a utility so I could easily check the job done by my code. Do you know of any editor that understands NTFS structure? |
|||
![]() |
|
revolution 29 May 2008, 01:26
A1: I see no reason for the theory to be wrong.
A2: I know of none, except maybe your brain and a low-level sector viewer. ![]() |
|||
![]() |
|
sinsi 29 May 2008, 01:47
Using DeviceIoControl with FSCTL_GET_RETRIEVAL_POINTERS will give you a map of clusters used by a file, but then you need to map clusters->sectors.
|
|||
![]() |
|
< Last Thread | Next Thread > |
Forum Rules:
|
Copyright © 1999-2025, Tomasz Grysztar. Also on GitHub, YouTube.
Website powered by rwasa.