当前位置:  开发笔记 > 编程语言 > 正文

DeleteFile()不起作用

如何解决《DeleteFile()不起作用》经验,为你挑选了1个好方法。

我正在尝试这个DeleteFile()功能,我在下面编写了这个程序.

#include 
#include 
#include 
using namespace std;
int main(){
    FILE * filetxt;
    // creat a file
    filetxt = fopen("C:\\Users\\Thomas\\Desktop\\filetxt.txt", "w");

    // delete the file 
    if (DeleteFile("\\\\.\\C:\\Users\\Thomas\\Desktop\\filetxt.txt") != 0){
        cout<<"success";
    }else{
        cout<<"fail";
    }
    cin;
}

但该计划没有按照预期的那样发挥作用.创建的文件未删除.

输出是:

fail

Mr.C64.. 10

您打开文件fopenDeleteFile 关闭之前调用fclose.

您可以从DeleteFileMSDN文档中读取:

如果应用程序尝试删除具有为正常I/O打开的其他句柄的文件或作为内存映射文件(在打开其他句柄时必须指定FILE_SHARE_DELETE),则DeleteFile函数将失败.

还要注意的是,如果失败,你可以调用GetLastErrorDeleteFile与有关失败的原因的详细信息,以得到一个错误代码.



1> Mr.C64..:

您打开文件fopenDeleteFile 关闭之前调用fclose.

您可以从DeleteFileMSDN文档中读取:

如果应用程序尝试删除具有为正常I/O打开的其他句柄的文件或作为内存映射文件(在打开其他句柄时必须指定FILE_SHARE_DELETE),则DeleteFile函数将失败.

还要注意的是,如果失败,你可以调用GetLastErrorDeleteFile与有关失败的原因的详细信息,以得到一个错误代码.

推荐阅读
喜生-Da
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有