创建面向多个 Windows 版本的应用程序时,确定应用程序特定数据应存储在何处的最佳实践是什么。具体来说:
- 应用程序特定数据(例如应用程序配置数据)
- 用户特定数据/设置
例如,我知道在 Windows Vista 上有可以使用的环境变量,例如 %APPDATA%,但是 Windows 7、Windows XP、Windows 98 呢?
我的主要问题是,微软是否有这方面的最佳实践文档,概述了不同类型数据(应用程序与用户)的文件系统位置以及在读取/写入这些位置时需要牢记的安全隐患?
我还感兴趣的是,这不仅适用于 .NET 应用程序(可以利用 ApplicationSettingsBase),而且适用于非托管 C/C++ 应用程序。
感谢 Pax 和 Remus 的精彩回答。
我也找到了这个项目(特定于 XP):
如何使用 Visual C++ 编写将用户和应用程序数据存储在正确位置的 Windows XP 应用程序 https://web.archive.org/web/20100727115507/http://support.microsoft.com/kb/310294
有一个很好的描述here http://msdn.microsoft.com/en-us/library/bb762494(VS.85).aspx各种 CSIDL 值及其引用的文件夹(包括希望能够告诉您需要了解的内容的描述)。
它还包含指向用于检索这些特殊文件夹路径的函数的链接。
请注意,从 Vista 开始,该方法发生了一些变化。现在它使用KNOWNFOLDERID
代替CSIDL
并且功能也发生了变化。看here http://msdn.microsoft.com/en-us/library/bb762584(VS.85).aspx.
您仍然可以使用旧函数(目前),因为我相信它们现在只是新函数的包装器。在未来的某个时刻,这种情况可能会改变。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)