调用windows api删除非空文件夹无法删除问题
2013-07-13 20:22
190 查看
RemoveDirectory( LPSTR path )用来删除空的dir,删除非空的dir时,先要删除这个dir下的所有文件,再调用RemoveDirectory(LPSTR path ),但是出现一个问题:
调用handle = FindFirstFile()将dir下的每一项都RemoveFile( LPSTR fileName),之后再调用RemoveDirectory(LPSTR path )删除这个dir,发现不能删除,原因是没有释放handle,在调用RemoveDirectory(LPSTR
path )之前,先FindClose( handle ),就可以了。
Closes a file search handle opened by the FindFirstFile, FindFirstFileEx, FindFirstFileNameW,FindFirstFileNameTransactedW, FindFirstFileTransacted, FindFirstStreamTransactedW,
orFindFirstStreamW functions.
调用handle = FindFirstFile()将dir下的每一项都RemoveFile( LPSTR fileName),之后再调用RemoveDirectory(LPSTR path )删除这个dir,发现不能删除,原因是没有释放handle,在调用RemoveDirectory(LPSTR
path )之前,先FindClose( handle ),就可以了。
BOOL WINAPI FindClose( _Inout_ HANDLE hFindFile );
Closes a file search handle opened by the FindFirstFile, FindFirstFileEx, FindFirstFileNameW,FindFirstFileNameTransactedW, FindFirstFileTransacted, FindFirstStreamTransactedW,
orFindFirstStreamW functions.
相关文章推荐
- 解决XP操作系统系统升级(补丁更新)后出现的文件夹无法删除的问题(support、update)
- 二步解决win7因没有权限无法删除文件夹问题
- 关于解决U盘“无法删除文件夹 目录不是空的”问题
- 解决文件,文件夹类型不识别,无法删除问题
- lsof 解决无法删除文件夹问题
- 解决无限嵌套文件夹无法删除的问题[WIN10]
- 解决autorun.inf及其止目录下的fly.(空文件夹)无法打开和删除问题!
- 关于jdk安装后手动删除文件夹后无法再次安装的问题。
- 【转】针对类似文件夹无法删除update:访问拒绝的问题解决办法
- PB调用windows api删除文件夹及其子文件夹或子文件
- win7删除文件时,提示“操作无法完成,因为其中的文件夹或文件已在另一程序中打开”问题
- win7删除文件时,提示“操作无法完成,因为其中的文件夹或文件已在另一程序中打开”问题
- extjs调用后台oracle jdbc驱动无法进行删除和查询的问题(ps.executeUpdate())
- 解决无限嵌套文件夹无法删除的问题[WIN10]
- 畸形文件夹无法删除问题
- WIN7下(权限问题)无法删除某些文件夹的解决办法
- cygwin文件夹无法删除问题解决
- 在eclipse中误创建了超长的文件夹而引发的“无法删除指定的文件名无效或太长”问题
- 解决“无法删除文件夹:目录不是空的”问题
- 使用Perl的File::Path模块删除非空文件夹