我目前正在开发一个文件系统并对现有文件系统进行一些研究,在我想到的文件系统中,除了通常由FS等存储的文件之外,我还想向文件添加额外的元数据(或文件属性)NTFS存储每个文件的文件名、类型、路径、大小、创建和修改日期以及所有权。特别是在NTFS中,我发现$MFT存储每个文件的属性,例如$FILENAME中的文件名和$STANDARD_INFORMATION中的时间戳,但它的其他属性(如所有者、位置、大小和类型)又如何呢?我问这个是为了了解是否可以用关于文件的额外元数据来补充像NTFS这样的FS,就像我之前说的那样,但我似乎无法理解它将已经拥有的元数据存储在哪里......
我创建了一个文件系统过滤驱动程序。我的驱动程序过滤IRP_MJ_CREATE并打印文件名。NTSTATUSDispatchCreate(__inPDEVICE_OBJECTDeviceObject,__inPIRPIrp){PFILE_OBJECTFileObject=IoGetCurrentIrpStackLocation(Irp)->FileObject;DbgPrint("DispatchCreate():%wZ\n",&FileObject->FileName;)returnDispatchPassThrough(DeviceObject,Irp);}这很好用。现在我想在每次创
这个问题与thisone非常相似,但对于Python而不是powershell。还讨论了here,和here,但没有发布有效的解决方案。那么,有没有一种方法可以在Python中创建一个绕过Windows上260个字符限制的目录?我尝试了多种前置\\?\的方法,但无法正常工作。特别是下面最明显的代码path=f'\\\\?\\C:\\{"a"*300}.txt'open(path,'w')因错误而失败OSError:[Errno22]Invalidargument:'\\\\?\\C:\\aaaaaaaaa.txt' 最佳答案 感谢e
当我尝试构建一个带有“.”的文件路径时,pathlib出现问题。在其名称中,pathlib模块会忽略它。以下是示例行(我尝试了多个版本,都导致了相同的问题)问题是原始文件名将来自另一个应用程序,所以我无法自己编辑名称。如果可能的话,我也不想做字符串替换工作。路径=r"c:\temp"1p=Path(path).joinpath("myfile.001").with_suffix(".bat")2p=Path(path,"myfile.001").with_suffix(".bat")3p=Path(path).with_name("myfile.001").with_suffix(".
我想加快编译速度,所以我想我可以在ramdisk上构建我的文件,但也可以将它自动刷新到文件系统,并在没有足够ram的情况下使用文件系统。对于我正在编写的应用程序,我可能需要类似的东西,我希望将文件缓存在ram中并刷新到FS中。我有哪些选择?是否已经存在这样的东西?(也许是fuse?)该应用程序是一个玩具应用程序(目前),我需要反复编译C++代码。正如我们所知,在进行之前需要解决特定问题时,编译所需的时间越长。我们能做的越少。 最佳答案 Ram磁盘在文件系统缓存方面走上了渡渡鸟的道路。它可以做出比静态缓存更好的决策,了解其他程序的RA
我希望无法从Windows文件系统复制或剪切exe文件以粘贴到某处。exe是用C#制作的。必须只能在一台PC中。我曾使用过FileSystemWatcher、NSIS、Clipboard。但总而言之,我需要检测该文件是否正在被复制。我也看过“预防”(httpwwwfree-download-blog.comdisable-cut-paste-copy-delete-rename-functions-using-prevent),但我只需要预防那个特定的exe不被复制或剪切。任何指示或想法都会有所帮助。 最佳答案 如果您希望exe可执
我很想知道是否有任何方法/机制来滚动我自己的虚拟文件系统,该系统将在现代Windows上运行。这个想法是,无论操作系统的哪一部分试图访问我“控制”的目录下的文件,所有操作都通过某种回调代码进行过滤。如果不是,是否有根本原因? 最佳答案 你绝对可以做到这一点,它被称为“重新分析点”。参见MSDN了解详情。Eugene是正确的...您想查看文件系统过滤器的文档,而不是重新分析点的文档。 关于windows-有没有办法连接到Windows文件系统,以便对于特定目录,我可以使用自定义代码控制每一
我想创建一个包含无效创建/修改/访问时间戳的文件以用于单元测试,以确保我的应用程序可以处理具有无效时间戳的文件。它是一个用C#编写的Windows应用程序,可以在NTFS和FAT32文件系统上运行。 最佳答案 Thisisnotpossible. 关于windows-如何创建具有无效Windows时间戳的文件?,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/3881329/
我希望能够从python检查给定的字符串是否可以是有效的跨平台文件夹名称-下面是我遇到的具体问题(文件夹名称以.结尾),但我确定有一些更多特殊情况(例如:con等)。有这方面的图书馆吗?在python(3.2)中,我在Windows(7)上创建了一个文件夹,名称以点('.')结尾,例如(没有方括号):[我假期做了什么,第二部分。]当创建的文件夹被ftp(到linux,但我想这无关紧要)时,它不再有点(作为返回,这破坏了很多超链接)。我已经从命令行检查过了,文件夹似乎没有“.”在文件名中mkdirtmp.dircdtmpcd..\tmp.显然,在文件夹名称末尾添加一个点会被忽略,例如:c
是否可以从Java应用程序模拟Windows7+的内存分区?我想创建一个由标签组织的基于git的文件系统,它可以作为一个分区安装到Windows中(因此映射到一个分层文件夹结构中)。是否有用于构建此类任务的API/库? 最佳答案 您必须创建一些用户模式文件系统,这是操作系统特定的低级代码,Java通常不是最佳解决方案。但您可能可以通过Javanative接口(interface)使用一些库。也许这样的东西适合你:Writingausermodefilesystemforwindows?