Articles of ntfs

在Python中创buildNTFS连接点

有没有办法在Python中创build一个NTFS交接点? 我知道我可以调用junction实用程序,但最好不要依赖外部工具。

在本地NTFS驱动器上查找回收站

我试图写一些简单的代码,将回收本地驱动器上回收站的目录。 看起来好像很简单 – 在Google上应该有一千个答案。 还没有find一个:( 我发现FAT和NTFS驱动器有不同的基本名称(RECYCLED和RECYCLER)。 我发现“回收站”是一个虚拟文件夹,它结合了机器上所有驱动器的回收站。 我没有find的是findC盘的回收站目录 – 即使在越南语(或任何其他非英语)的机器上。 (没有post,我可以find表明“RECYCLER”是否获得国际化) 任何人都可以指出我一个明确的答案? 谢谢 更新:意识到CSIDL_BITBUCKET和使用它的function。 从我读过的所有东西中,它指向一个虚拟目录,它是所有驱动器上该用户删除的所有文件的联合。 寻找物理回收站目录(在我的Vista上,它似乎是C:\ $ Recycle.Bin据我所知)

如何在NTFS上创build一个稀疏文件?

我正在testing一个稀疏文件。 但是我的testing代码不能正常工作。 HANDLE h = CreateFileW(L"D:\\sparse.test", GENERIC_READ|GENERIC_WRITE, FILE_SHARE_READ|FILE_SHARE_WRITE|FILE_SHARE_DELETE, 0, CREATE_ALWAYS, FILE_ATTRIBUTE_ARCHIVE|FILE_ATTRIBUTE_SPARSE_FILE, 0); DWORD d = GetFileAttributes(L"D:\\sparse.test"); // The function returns 32(FILE_ATTRIBUTE_ARCHIVE). // Where is FILE_ATTRIBUTE_SPARSE_FILE flag? // How do I make a sparse file. DWORD written; WriteFile(h, "aaa", 3, &written, 0); SetFilePointer(h, 2*1024*1024*1023, 0, FILE_BEGIN); SetEndOfFile(h); WriteFile(h, "bbb", 3, &written, 0);

NTFS中的文件名是以什么编码存储的?

我刚开始使用一些编程来处理WinXP系统上非英文名称的文件名。 我已经做了一些关于unicode的推荐阅读,我想我已经有了基本的想法,但是有些部分对我来说还不是很清楚。 具体来说,什么编码(UTF-8,UTF-16LE / BE)是存储在NTFS中的文件名 (不是内容,而是文件的实际名称)? 是否有可能打开任何文件使用fopen(),这需要一个字符*,或者我别无select,只能使用wfopen(),它使用wchar_t *,大概需要一个UTF-16string? 我尝试手动喂养一个UTF-8编码的stringfopen(),例如。 unsigned char filename[] = {0xEA, 0xB0, 0x80, 0x2E, 0x74, 0x78, 0x74, 0x0}; // 가.txt FILE* f = fopen((char*)filename, "wb+"); 但是这是作为'ê°€.txt'出来的。 我的印象(这可能是错误的),一个UTF8编码的string就足以打开Windows下的任何文件名,因为我似乎隐约记得一些Windows应用程序传递(char *),而不是(wchar_t *),并有没问题。 任何人都可以点亮这个?

在文件之外存储元数据:现代Windows上的任何标准方法?

我的C# 应用程序将文件从远程文档pipe理系统同步到文件系统。 文档pipe理系统具有与每个文件相关联的元数据(上次审计的date,保密性,作者…),但不存储在每个文件中。 这些文件可以是任何东西(bmp,xwd,pdf,未知的二进制文件) 我想使这些元数据在本地Windows文件系统上可见。 但是我不能在每个文件中存储元数据。 例如,更改文件的保密性不能修改文件的校验和。 什么是最好的方式来存储这个元数据? 我听说过NTFS 扩展文件属性 ,是否适用于我的场景? 这个关于设置扩展文件属性的问题有所有答案都在讨论修改文件本身,我必须避免这个问题。 如果没有标准的解决scheme,那么我会将元数据存储在本地的SQLite数据库中。 但我更喜欢使用标准的解决scheme,以便其他应用程序(资源pipe理器,图库应用程序等)可以显示/修改他们理解的属性(如“作者”)

如何才能检测卷上已删除,已更改和已创build的文件?

我需要知道是否有一个简单的方法来检测只有在NTFS卷上删除,修改或创build的文件。 我用C ++编写了一个非现场备份程序。 在第一次备份之后,我检查每个文件的存档位以查看是否有任何更改,并仅备份已更改的文件。 此外,它从VSS快照备份以防止文件locking。 这似乎在大多数文件系统上都可以正常工作,但对于有很多文件和目录的文件系统来说,这个过程需要很长时间,而且备份通常需要一天以上才能完成备份。 我尝试使用更改日志来轻松检测NTFS卷上所做的更改,但更改日志会显示大量logging,其中大部分与创build和销毁的小临时文件有关。 另外,我可以获得文件名,文件引用号和父文件引用号,但无法获得完整的文件path。 父文件引用号是不知何故给你的父目录path。 编辑:这需要每天运行,所以在每次扫描开始时,它应该只logging自上次扫描以来发生的变化。 或者至less,从某个时间和某个date开始,应该有一种说法。

用Windows / NTFS附加到文件primefaces?

如果我从多个进程写入一个简单的文本日志文件,它们是否可以覆盖/损坏对方的条目? (基本上,这个问题在UNIX中是文件追加primefaces,而对于Windows / NTFS。)

在Windows文件系统中,每个文件都有一个预先计算的哈希值?

我想通过它的哈希search一个重复的文件。 为了提高性能,我想知道在NTFS / FAT文件系统中是否存储了每个文件的哈希/校验和。 如果有的话,我不必计算它们全部来search我的文件。 如果有,如何使用.NET访问它? 如果有帮助,它将是JPEG文件。 他们有校验吗?

使用NSIS检测目标卷是否为NTFS

我使用NSIS为需要在NTFS卷上运行的程序创build安装程序。 如何检测安装path是否在NTFS卷上,并相应地执行(显示帮助/警告消息)?

如何查看目录的子文件是否已更改

在Windows中,是否有一个简单的方法来判断一个文件夹是否有一个已经改变的子文件? 我validation了,文件夹上的最后修改date在子文件更改时不会更新。 有没有我可以设置,将修改此行为的registry项? 如果重要,我正在使用NTFS卷。 我最终想从C ++程序中获得这个能力。 以recursion方式扫描整个目录对我来说不起作用,因为该文件夹太大了。 更新:我真的需要一种方法来做到这一点,而没有一个进程在更改发生时运行。 所以安装一个文件系统监视器对我来说并不是最理想的。 Update2:归档位也将无法正常工作,因为它具有与上次修改date相同的问题。 该文件的归档位将被设置,但文件夹不会。