【发布时间】:2011-04-04 12:55:54
【问题描述】:
我需要一个安全的临时文件夹,我可以在其中存储我的应用程序的临时文件,但到目前为止,我的研究使我得出结论,我发现的所有方法都有缺陷。
第一个想法是使用GetTempPath函数,但这会导致两个问题:
- 该文件夹可能不存在,因此我必须将文件夹逐个截断到根目录,如果它们不存在则重新创建它们回到完整路径(容易出错,乏味)
- 从“Larry Osterman 的 WebLog”click 看来,
GetTempPath可能会回退到 USERPROFILE 或 Windows 目录并在其中提取大量文件,这太糟糕了(TM)!
在同一篇文章中,有人建议使用 GetEnvironmentVariable,但这对我来说似乎是一个危险的功能(例如缺少 TMP 和 TEMP 环境变量)。
我可以使用更清洁的功能吗?似乎 SHGetKnownFolderPath 不知道临时文件夹是什么。
【问题讨论】:
-
Directory.Create 创建途中所有不存在的目录,如果目录存在则不执行任何操作。
标签: windows api filesystems temporary-files