- android - RelativeLayout 背景可绘制重叠内容
- android - 如何链接 cpufeatures lib 以获取 native android 库?
- java - OnItemClickListener 不起作用,但 OnLongItemClickListener 在自定义 ListView 中起作用
- java - Android 文件转字符串
对于我正在做的一些商业项目,我需要能够读取存储在 $mft 文件中的实际数据。
我找到了一个 gpl lib这可能会有所帮助,但由于它是 gpl,我无法将它集成到我的代码中。
有人可以指点我可以使用的项目/或指点我相关的 Windows API(不需要 1000 行代码即可实现的东西)
顺便说一句,为什么 Windows 不允许我直接读取 mft 文件? (通过创建文件和读取方法,如果我想毁掉我的驱动器,那是我的事,不是女士的事)。
谢谢。
最佳答案
您只需使用\.\X 上的 CreateFile() 打开卷的句柄:其中 X 是驱动器号(查看 CreateFile() 上的 MSDN 文档,它在备注部分)。
将第一个扇区读入 NTFS 引导记录结构(您可以在网上找到它,搜索 Richard "Flatcap"Russon,编辑:我找到了,http://www.flatcap.org/ntfs/ntfs/files/boot.html)。引导扇区结构中的一个字段给出了 MFT 在簇中的起始位置($MFT 的 VCN 0 的 LCN),您必须对该位置执行 SetFilePointer() 读取扇区的倍数。该位置的前 1024 个字节是 $MFT 的文件记录,您可以再次解析此结构以找到始终非常驻的数据属性,它的大小是当时 MFT 文件的实际大小。
$Boot、文件记录和基本属性(标准信息、文件名和数据)的基本结构以及解析代码应该运行不到 1000 行代码。
关于windows - 转储 $mft 文件的内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4920243/
我在一个项目中工作,我必须从驱动器中枚举文件名。我尝试了两种方法 MFT 解析和 使用 FindFirstFile 进行多线程处理。我比较了两种实现的执行时间,它显示较小的 MFT 大小执行速度更快,
我正在使用 DesktopDuplication API 捕获桌面并将样本从 RGBA 转换为 GPU 中的 NV12,并将其提供给 MediaFoundation 硬件 H264 MFT。这适用于
关闭。这个问题需要多问focused 。目前不接受答案。 想要改进此问题吗?更新问题,使其仅关注一个问题 editing this post . 已关闭 4 年前。 Improve this ques
我正在编写一些代码来解析 NTFS 卷中磁盘上的 MFT。这很简单,但是一个特殊的极端案例引起了我的注意,我在互联网上的任何地方都找不到明确的答案。 对于 NTFS 中的普通文件,如果文件的属性多于单
我正在尝试提取主文件表(MFT)的内容。我已从 NTFS 卷复制 MFT 并将其另存为 .bin 文件。现在我尝试使用Python中提供的unpack函数来读取这个文件。我正在读取为存储在文件记录的文
对于我正在做的一些商业项目,我需要能够读取存储在 $mft 文件中的实际数据。 我找到了一个 gpl lib这可能会有所帮助,但由于它是 gpl,我无法将它集成到我的代码中。 有人可以指点我可以使用的
我正在编写一个程序来删除 Windows NTFS 卷中的文件和所有相关属性(包括 0x30 $FILE_NAME、0x80 $DATA、0x90 $INDEX_ROOT 和 0xA0 $INDEX_
在网上寻找有关如何读/写 MFT 的解释时,我发现了以下部分:( http://www.installsetupconfig.com/win32programming/1996%20AppE_apni
我正在使用 Windows Media Foundation 创建视频播放应用程序。 我使用 IMFTransform 接口(interface)和下面链接中提到的其他一些强制接口(interface
我也是媒体基础编程和 Windows 编程的新手。 这个问题看起来可能很愚蠢,但我在任何地方都没有得到明确的答案。 我的应用程序是捕获屏幕、缩放、编码并将数据发送到网络。我希望提高管道的性能。所以我想
有什么方法可以用 Python 或 JavaScript 访问 NTFS 主文件表 (MFT)? 最佳答案 您需要一个库来分析 NTFS 文件系统中的主文件表 ($MFT)。 对于 Python,有
我正在尝试从 MFT 中删除一个文件记录,如果我打开原始分区并通过解析 MFT 文件到达所需的文件记录,我就成功了。这种方法的问题是我必须首先锁定卷,以便我可以在任何 MFT 文件记录上写入零,如果其
要使用 Windows Media Foundation Transform 解码 H264 流,目前的工作流程是这样的: IMFSample sample; sample->SetTime(time
在我的 C# 应用程序中,我已经有了一种检查文件系统的方法,但我想利用从主文件表 (MFT) 读取的优势,因为它要快得多。我了解 1) 它是专有规范,因此如有更改,恕不另行通知,以及 2) 只有当应用
有人遇到过 VideoToolbox 无法正确解码媒体基础变换 (MFT) 编码的 H264 的问题吗?解码帧的一半以上具有绿色 block 失真。我试过Livy Stork's example用于解
我现在尝试在 Win10 pro Insider 预览版上使用 MP3 编码器 mft,但无法设置输出媒体类型。 下面是我的代码: // Fill in MPEGLAYER3WAVEFORMAT da
我正在努力将两个音频流混合成一个输出流。 MFNode 有一个 AudioMixerMFT,但当我尝试构建这样的拓扑并执行它时 TopoEdit 崩溃: 注意:我尝试了 Windows SDK 7.1
我正在编写一个工具,用于查找 iTunes 库中丢失的文件,适用于 Mac 和 Windows。在 Mac 上,我可以使用神奇的“目录搜索”功能通过命名快速查找文件。 但是,在 Windows 上,似
媒体基础转换对象 (MFT) 可以实现输出缓冲区分配模型,其中缓冲区由 MFT 对象在内部分配。 如果是这种情况,内部分配的缓冲区将通过传递给 IMFTransform::ProcessOutput(
我想使用“英特尔® 快速同步视频 H.264 编码器 MFT”对视频进行编码。如果我从系统缓冲区创建 IMFSample,它运行良好。就像下面这样: IMFMediaBuffer *pBuffer =
我是一名优秀的程序员,十分优秀!