在 Win32 中删除子文件夹本身之前,如何从文件夹和子文件夹中删除文件

How can I delete files from folders and subfolders before deleting the subfolders themselves in Win32?

本文关键字:文件夹 删除 文件 Win32      更新时间:2023-10-16

在Win32 API(RemoveDirectory(中删除目录需要在删除文件夹之前删除该文件夹下的所有文件。因此,假设我在根目录中有一个文件夹"foo",其中包含文件,以及一些也可能没有文件的子文件夹,我如何递归删除所有文件,然后删除子文件夹?

它通常需要一个递归函数,该函数读取要删除的目录的内容(通过FindFirstFile()/FindNextFile()( - 如果遇到文件,请将其删除,否则递归到文件夹中,然后在递归返回时删除该文件夹。

或者你可以只使用IFileOperation系统将为你完成所有的工作。