版块
论坛
喜欢
话题
应用
搜索
登录
注册
linuxyf的个人空间
访问量
2
新鲜事
帖子
资料
http://bbs3.driverdevelop.com/index.php?m=space&uid=168863
高人们请进来,看看如何删除一个文件夹
我知道删除一个文件夹或者文件,可以通过发Irp或者ZwDeleteFile,但对于文件夹来说,只有空文件夹发Irp才可以删除,如果文件夹下有其他文件或者文件夹,发Irp删不掉啊,如何删除文件夹不管是不是空文件夹,有人知道吗?指点一下??
回复
(
19
)
2007-07-19 10:43
来自版块 -
文件系统(过滤)驱动程序开发
◆
◆
表情
告诉我的粉丝
提 交
devia
:
(2007-07-24 17:19)
回复
znsoft
:
不错,赞一个
(2007-07-24 17:16)
回复
tooflat
:
这是我实现的删除目录的代码。欢迎大家指正错误。 NTSTATUS SfDeleteFile( IN PUNICODE_STRING FileName ) { OBJECT_ATTRIBUTES objAttributes; ...
(2007-07-24 17:07)
回复
tooflat
:
引用第3楼znsoft于2007-07-19 20:00发表的 : 有一个很简单的办法,作一个扫描列表,可以说是一个队列也行 扫描时,扫描一个目录,把需要扫描的子目录放到这个队列. 每扫完一个目录,就把这个目录从除列去掉或作标志,这样就可以把递归变成线线的了 这方法不错。
(2007-07-20 12:33)
回复
devia
:
这个楚狂人最有发言权了,:-)
(2007-07-20 09:40)
回复
linuxyf
:
都是牛人进来了,长见识了
(2007-07-20 08:46)
回复
znsoft
:
有一个很简单的办法,作一个扫描列表,可以说是一个队列也行 扫描时,扫描一个目录,把需要扫描的子目录放到这个队列. 每扫完一个目录,就把这个目录从除列去掉或作标志,这样就可以把递归变成线线的了
(2007-07-19 20:00)
回复
tooflat
:
wowocock能否举个例子说明一下怎么把递归转换成非递归的处理。 我也遇到了这个难题。
(2007-07-19 18:55)
回复
wowocock
:
自己枚举删除,考虑到内核栈空间有限,尽量不要用递归,把栈转换成堆处理。
(2007-07-19 17:14)
回复
« 上一页
1
2
linuxyf
加关注
写私信
0
关注
0
粉丝
159
帖子
返回顶部