我在64位Windows7上运行。我想获取与某些NTFS系统文件关联的FileID。其中一些(“$Mft”、“$MftMirr”)我可以打开,但其他(“$LogFile”和“$Bitmap”)因“拒绝访问”错误或无效参数(“$Volume”)而失败。我试过以管理员身份执行此操作并作为本地服务运行,但它们仍然失败。我正在使用以下内容:/*openthefileforcheckingtheFileID*/h=CreateFileW(argv[i],//_In_LPCTSTRlpFileName,FILE_READ_ATTRIBUTES,//_In_DWORDdwDesiredAccess,
有一个函数可以设置“有效数据长度”值:SetFileValidData,但我没有找到获取“有效数据长度”值的方法。如果EOF与VDL不同,我想知道给定的文件,因为在VDL的情况下在VDL之后写入将导致性能损失,如here所述. 最佳答案 我找到了this页面,声称:thereisnomechanismtoquerythevalueoftheVDL所以答案是“你不能”。如果您关心性能,您可以将VDL设置为EOF,但请注意,您可能允许访问磁盘上的旧垃圾-这两个指针之间的部分,如果您不访问该文件则应该为零设置VDL指向EOF。
如果我没看错,PlatformSDK含沙射影:Thedefaultdatavalueofasparsefileiszero;however,itcanbesettoothervalues.然而,通过相关文本的梳理完全没有给我任何迹象表明相应的FSCTL允许设置或检索稀疏零值。那么,是介绍有误还是FS控制代码没有记载? 最佳答案 可能真的写得不好。是的,默认值为零,您不能将默认值设置为零以外的任何值。但是,您可以通过WriteFile将这些零更改为您想要的任何内容。当然,这不是您要的。 关
GoogleWebToolkit(GWT)在临时(C:\Users\User01\AppData\Local\Temp)目录中生成大量临时文件。文件路径示例:C:\Users\User01\AppData\Local\Temp\gwt-codeserver-1101830889369654349.tmp\com.company01.web.builder.BuildingsWeb\compile-2\gen\com\company01\web\theme\custom_pluto123\client\base\progressbar\Css3ProgressBarAppearance_
我正在设计一个简单的增量备份工具。有没有可能,在我修改目录内容后,该目录的“上次修改”属性将保持不变?原因可能是NTFS故障或错误,我不知道。我发现有一个选项NtfsDisableLastAccessUpdate。是否也可以关闭修改时间戳更新?我想知道这个属性有多可靠,这样我就可以决定用它来备份文件系统是否是个好主意。我正在使用FileSystemInfo.LastWriteTime在C#中提取该信息。 最佳答案 我不认为,最后修改的时间戳是可靠的。时间戳由您使用的文件系统决定。例如FAT32在处理修改/创建时间时使用本地时间戳。而
我的需求是通过程序扩展硬盘容量。当我在DeviceIO中使用IOCTL_DISK_GROW_PARTITION对其进行扩展时,磁盘管理显示新修改的大小,而ThisPC(我的电脑)中的驱动器大小保持不变。BOOLDeviceIoControl((HANDLE)hDevice,//handletodeviceIOCTL_DISK_GROW_PARTITION,//dwIoControlCode(LPVOID)lpInBuffer,//inputbuffer(DWORD)nInBufferSize,//sizeoftheinputbufferNULL,//lpOutBuffer0,//nOu
这个命令应该创建一个稀疏文件:channel=Files.newByteChannel(path,EnumSet.of(CREATE,WRITE,SPARSE));但是,它只是创建一个常规(非稀疏)文件。我可以在命令行上使用fsutil手动将其转换为稀疏文件,但如何让Java运行时执行此操作?我在Windows10(NTFS)上使用Java11。 最佳答案 显然,创建稀疏文件仅适用于OpenOptionCREATE_NEW(替换任何现有文件),但不适用于CREATE(仅当文件不存在时才创建文件)。channel=Files.newB
Windows(或一般的NTFS)是否在任何地方存储创建文件的应用程序的名称?或者,是否有一种可靠的方法来确定哪个应用程序在最初创建文件后不久(比如几秒钟)负责创建文件?我们正在开发文档管理系统。它使用FileSystemWatcher监视文件系统中的新文件——这部分很简单——但我希望它能够跟踪哪个应用程序/版本创建了它检测到的新文件。我知道我可以查找属于正在运行的进程的打开文件句柄,但大概这种方法只有在应用程序创建文件然后对其保持锁定时才有效,对吗?有没有更好的办法? 最佳答案 不,不是事后。但是您可以创建一个服务来监视所有文件访
我有一个用户拥有一组JPEG文件,位于Windows7NTFS文件系统上。用户使用Windows7的“详细信息”对话框对这些图像进行了注释。他们为每个文件添加了标题、评论(可能与标题不同)和标签字段。标题似乎作为EXIF数据的一部分存储在每个JPEG文件中。但是Comments和Tags字段不是。我在备用数据流中寻找过它们;没有人在场。我看不到它们是否是NTFS扩展属性,因为我找不到专门列出这些属性的工具。我的问题是:这个元数据存储在哪里,我如何从Ruby中访问它? 最佳答案 从Vista开始,似乎有一个属性系统(1和2),其中属性
我需要获取驱动器上所有文件的列表。我正在使用递归解决方案。但这需要很多时间。我想知道,是否可以从主文件表中获取NTFS驱动器上所有文件的名称和位置?我认为它会非常快。有什么建议吗? 最佳答案 有一个工具可以直接搜索mft,它叫ndff。我以前用过,速度非常快。大概可以做你想做的事——还有另一个工具叫做“Everything”,我猜它做同样的事情——它也使用USN更改日志来更新它的索引。 关于windows-有没有办法从NTFS卷的MFT获取文件名/位置信息?,我们在StackOverfl