代码之家  ›  专栏  ›  技术社区  ›  Reto Meier

Windows应用程序的工作文件应该写在哪里?

  •  0
  • Reto Meier  · 技术社区  · 15 年前

    如果您的Windows应用程序需要将工作文件作为其正常操作的一部分写入(用户不提示):

    • 文件系统上的哪些地方应该写入它们?
    • 对于所有Windows版本(xp/v/7/server),在.NET中获取此目录的正确方法是什么?

    (写入与可执行文件相同的目录或“temp”目录不适合我的特定情况。)

    5 回复  |  直到 15 年前
        1
  •  5
  •   Henk Holterman    15 年前

    最常见的地方是:

    string path = Environment.GetFolderPath(
          Environment.SpecialFolder.ApplicationData);
    

    但是还有其他的environment.specialfolder值是有用的。当然还有用户的 Documents 文件夹。

    你说你不想要一个临时文件,但是如果你在一个会话中需要它,

     string path = System.IO.Path.GetTempFileName();
    

    可能非常有用。

        2
  •  5
  •   Matthew Whited    15 年前

    另一个选择是 Isolated Storage ( Intro 可用于每个组件、每个机器、每个用户以及上述任何组合。

        3
  •  3
  •   Community CDub    7 年前
        4
  •  2
  •   Myles    15 年前

    Environment.SpecialFolder.LocalApplicationData 这将是.NET的方法。

        5
  •  1
  •   Max Strini    15 年前

    是的,在appdata下(通常是%appdata%\[公司名称]\[应用程序名称]——xp和vista/7之间的%appdata%位置不同,因此一定要使用抽象层,不要硬编码路径)是标准位置。拜托,拜托,拜托,请不要把它们放在程序文件下。