怪了,为什么 DeleteFile 不能删除只读文件呢

CodeKey 2005-06-04 03:11:55
如题:

不知道哪位大侠知道哪个函数可以实现彻底删除文件,不关它只读不只读的,
如果没有这样的函数,是不是要修改文件属性后,再DeleteFile

谢谢啦
...全文
1169 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
CodeKey 2005-06-04
  • 打赏
  • 举报
回复
谢谢 huwei001982(編程浪子) ( ) 信誉:105

刚刚有个问题你也帮我解决了,再次感谢!


请问您是否知道
DeleteFile 删除之后能不能恢复呢,
比如还进行了其他拷贝、删除之类
huwei001982 2005-06-04
  • 打赏
  • 举报
回复
SHFILEOPSTRUCT op;
memset(&op, 0, sizeof(op));
op.pFrom = "c:\\text.ini";
op.fFlags = FOF_ALLOWUNDO;
op.wFunc = FO_DELETE;
if (SHFileOperation(&op) != 0)
{
// delete error
}
huwei001982 2005-06-04
  • 打赏
  • 举报
回复
楼上的不是把 MSDN 贴出来一部分了吗?

难道楼主没有看??

DeleteFile 操作只读文件时会返回ERROR_ACCESS_DENIED错误, 想删除的话必须先将

ReadOnly属性去掉
CodeKey 2005-06-04
  • 打赏
  • 举报
回复
看起来这问题并不是那么简单了,我把贴子加了点分
CodeKey 2005-06-04
  • 打赏
  • 举报
回复
再问:DeleteFile 删除之后能不能恢复呢,
比如还进行了其他拷贝、删除之类
LCBoy 2005-06-04
  • 打赏
  • 举报
回复
SHFileOperation
ShiGang 2005-06-04
  • 打赏
  • 举报
回复
可以的!但在刪除前,你要確保有沒有程式將打開了,如果打開了,必須先關閉后才能刪除.
CodeKey 2005-06-04
  • 打赏
  • 举报
回复
只有修改属性这么一种办法吗,或许用 DeleteFile 一定要这样,
但是有没有更好的函数呢
xlzxlich 2005-06-04
  • 打赏
  • 举报
回复
If an application attempts to delete a file that does not exist, the DeleteFile function fails. If the file is a read-only file, the function fails with ERROR_ACCESS_DENIED. To delete a read-only file, you must first remove the read-only attribute.

16,551

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC相关问题讨论
社区管理员
  • 基础类社区
  • Creator Browser
  • encoderlee
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

        VC/MFC社区版块或许是CSDN最“古老”的版块了,记忆之中,与CSDN的年龄几乎差不多。随着时间的推移,MFC技术渐渐的偏离了开发主流,若干年之后的今天,当我们面对着微软的这个经典之笔,内心充满着敬意,那些曾经的记忆,可以说代表着二十年前曾经的辉煌……
        向经典致敬,或许是老一代程序员内心里面难以释怀的感受。互联网大行其道的今天,我们期待着MFC技术能够恢复其曾经的辉煌,或许这个期待会永远成为一种“梦想”,或许一切皆有可能……
        我们希望这个版块可以很好的适配Web时代,期待更好的互联网技术能够使得MFC技术框架得以重现活力,……

试试用AI创作助手写篇文章吧