如何在Windows中打开文件,而不阻止其重命名

有没有办法保持一个文件打开,而不阻止其他应用程序的重命名?

保持打开文件不会阻止它在Unix中的重命名。 我可以在Windows中实现相同的行为吗?

您需要使用共享模式FILE_SHARE_DELETE (0x00000004)打开文件。

请参阅MSDN帮助的CreateFile API。

恐怕没有。 Windows处理非常不同于unix的打开文件(在* ux下,您甚至可以移动或删除文件而不会干扰打开的句柄)。 也许用一个新的文件系统是可能的(例如,尝试用于Windows的ext3文件系统驱动程序)