【发布时间】:2013-06-01 04:48:15
【问题描述】:
我有一个程序会在与编译的 .exe 相同的目录中创建一个简单的 txt 文件:
ofstream output("myfile.txt", ios::binary | ios::trunc);
在我的程序结束时,我要删除它:
remove("myfile.txt");
这两种方法都很好,但是,如果用户意外关闭 cmd 窗口,或者他们结束了进程,我希望删除文件。
【问题讨论】:
-
可能值得开始一个不同的过程来观察这个过程的结束。
-
有趣...你能详细说明或举一个简单的例子吗? :)
-
在哪个操作系统上?你不能让那个输出文件成为一个临时文件(例如tmpfile(3),至少在 Linux、MacOSX 和其他 POSIX 系统上)?
-
Window 7。考虑到我有一个完全独立的 exe 也使用这个 txt,我不这么认为。我希望它写入用户系统,然后在程序关闭时删除(可能在崩溃时捕获它???)
-
嗯,使用
WinExec、ShellExecute或CreateProcess很容易创建。据我所知,制作一个强大的崩溃观察者并不是一件容易的事。当然还有更糟糕的方法更容易,比如每隔几秒检查一次它是否还活着。
标签: c++ file-io exit temporary