Win32 API CreateDirectory与FLAG_DELETE_ON_CLOSE.可能的



我当然不是Win32 API编程方面的专家,但我刚刚学到的是,使用CreateFile函数,我可以在使用FILE_FLAG_DELETE_ON_CLOSE值释放其句柄后将其标记为被操作系统删除。我似乎找不到一种方法来做同样的使用CreateDirectory,或者我错过了什么?

可以选择,我是否可以订阅该特定文件夹中的更改(例如创建的新文件),然后以某种方式将该文件夹中的所有文件标记为此标志?

可以使用FILE_FLAG_BACKUP_SEMANTICS标志打开一个目录句柄:

#include <windows.h>
#include <stdio.h>
void main()
{
    CreateDirectory(".\testdir",NULL);
    system("pause");
    HANDLE hDir = CreateFile(".\testdir",0,FILE_SHARE_READ|FILE_SHARE_WRITE|FILE_SHARE_DELETE,0,OPEN_EXISTING,FILE_FLAG_BACKUP_SEMANTICS|FILE_FLAG_DELETE_ON_CLOSE,NULL);
    CloseHandle(hDir);
}

这确实在我测试的机器上工作(如果目录是空的),但我不确定它是否被记录为有效的事情。

相关内容

  • 没有找到相关文章

最新更新