【问题标题】:Where should an application's default folder live?应用程序的默认文件夹应该放在哪里?
【发布时间】:2010-06-01 21:16:44
【问题描述】:

我正在创建一个小应用程序,用于配置连接的设备,然后将配置信息保存在一个文件中。用户不能选择文件名,但可以选择其位置。

应用默认保存到文件夹的最佳位置在哪里?

我已经看到了“MyDocuments”位置的示例(例如 Visual Studio 就是这样做的)。

我看到在 C:\ 驱动器顶部创建了一个文件夹。我个人觉得这有点令人讨厌。

它可能位于 Program Files[制造商] 或 Program Files[产品名称] 中,或者安装在应用程序的任何位置。我过去曾使用过这个位置;我不喜欢它,因为 Windows 资源管理器不允许用户很容易地浏览到那里(“可浏览性”)。

考虑到“可浏览性”是一个因素的最后一个概念,我认为 MyDocuments 是最佳选择。这是最常见、最广泛接受的做法吗?

我认为过去我们选择安装文件夹是因为它与设备管理实用程序共同定位数据。但我真的很想摆脱这种情况。我不希望用户必须翻阅系统文件才能找到他/她的数据,尤其是如果那个人不太熟悉 Windows。

另外,我使用的是 .NET WinForms FolderBrowserDialog,而“Environment.SpecialFolders”枚举对于将对话框设置为指向 Program Files 文件夹没有帮助。

感谢您的意见!

苏兹。

【问题讨论】:

    标签: winforms usability folderbrowserdialog


    【解决方案1】:

    用户数据属于用户文件夹。 (乌托邦式的)想法是他们只需要备份他们的个人文件夹,并且如果他们的计算机突然死机,他们将拥有使计算机恢复正常工作所需的一切。如果他们的所有个人数据都分散在计算机上,那只会使用户感到困惑并破坏您的产品。

    【讨论】:

    • 0xA3:我不确定在这种情况下是否会出现这种情况。这些配置文件属于正在配置的设备......而不是应用程序。因此,如果用户带着设备离开了某个地方,他/她应该很容易找到配置文件以随身携带,或与他人共享以配置另一台设备.. fbrereto:谢谢理由。
    • 配置文件尤其应该放在 AppData 或 LocaAppData 文件夹中。当然,将用户数据保存在一个位置的另一个原因是用户只有写入其文件夹的权限。
    • App 数据不容易找到,即使在用户文件夹中也是如此。除非访问数据的唯一方式是通过我的应用程序。嗯
    • Belaboring 这个问题:我想把它放在一个明显的地方。默认情况下,我将在以下两个位置之一创建一个文件夹:MyDocuments 或桌面。用户将覆盖该选择。哪个默认值更好:Docs 还是 Desktop?
    • 我会投票支持 MyDocuments 下的子目录 - 桌面太直接了,应用程序无法将文件隐式放置在那里。
    【解决方案2】:

    意见:所有这些内部包含大量空格的文档和设置内容确实被误导了,包括“我的”文档。您总是不得不在命令行中手动键入它。我会选择用户硬盘下的NIH结构,他只会说谢谢。

    【讨论】:

    • 我同意这个评估,这就是我拒绝使用“MyDocuments”的原因。但是.. Win7 的 Documents/Settings 事情要简单一些。也就是说,没有。这里只有你的用户名和“文档”。我自己在 Win7 上一直在使用它。但为了我的 WinXP 最终用户,我真的不想把东西放在那里。你能定义一下“NIH 结构”吗?
    • 别忘了普通用户只有在他们的“家”目录中才有写权限。
    • NIH 来自“不是在这里发明的”,重塑标准的误导性意识形态。 NIH 结构 - 就像“普遍接受的 One Microsoft Way 的替代方案”一样,严格来说应该称为“IH”结构。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-04-17
    • 2012-07-10
    • 2010-09-05
    • 1970-01-01
    • 2018-01-18
    • 1970-01-01
    相关资源
    最近更新 更多