代码之家  ›  专栏  ›  技术社区  ›  Robert Groves

微软是否有关于在不同Windows平台上存储应用程序数据和用户数据的最佳实践文档?

  •  18
  • Robert Groves  · 技术社区  · 15 年前

    在创建针对多个Windows版本的应用程序时,确定应用程序特定数据存储位置的最佳做法是什么。明确地:

    • 用户特定数据/设置

    例如,我知道在Windows Vista上可以使用环境变量,如%APPDATA%,但Windows 7、Windows XP和Windows 98又如何呢。

    我还感兴趣的是,这不仅适用于.NET应用程序(可以使用ApplicationSettingBase),而且也适用于非托管C/C++应用程序。

    How to write a Windows XP Application that stores user and application data in the correct location by using Visual C++

    2 回复  |  直到 13 年前
        1
  •  9
  •   paxdiablo    9 年前

    这是一个很好的描述 here 各种CSIDL值及其引用的文件夹(包括一个说明,希望它能告诉您需要知道的内容)。

    它还包含指向用于检索这些特殊文件夹路径的函数的链接。

    KNOWNFOLDERID 而不是 CSIDL 功能也发生了变化。看见 here .

    您仍然可以使用旧函数(目前),因为我相信它们现在只是新函数的包装。在未来的某个时候,这种情况可能会改变。

        2
  •  9
  •   djvg mozman2    7 年前

    Windows Software Logo Program (link broken) . 该链接指向Windows 7徽标要求文档,但XP、Windows 2003、Vista和Windows 2008也有类似的文档。在“技术要求”部分,您将找到一些您要查找的信息:

    必须保存的所有应用程序数据 应存储在 ProgramData

    特定用户,不可共享 与计算机的其他用户必须 贮存在 Users\<username>\AppData

    数据必须在第一次运行时写入,并且 在安装过程中不会。这是 因为没有正确的用户 发生时存储数据的位置 安装

    编辑:

    Certification requirements for Windows Desktop Apps (Section 10)