保存应用程序首选项…注册表/文件

存储应用程序首选项的最佳位置在哪里?

特别是,我想保存媒体播放器的首选项,如音量级别等。 两个候选人脑海中浮现……文件和注册表。 哪个更合适?

作为后续内容,我还想知道是否有任何API有助于创建特定于应用程序的设置。

除非有人告诉我这是错误的,否则我想保存HKCU... or HKLM/Software/MyCompanyName/MyAppName/Key注册表的HKCU... or HKLM/Software/MyCompanyName/MyAppName/Key ,或者%APPDATA\MyCompanyName\MyAppName\someTypeOfSettingsFile

由于这些似乎常用于此类设置,我假设.Net可以轻松地在这些位置存储设置。 是否有一个简单的高级API,.Net可以让我读取和写入这些常见位置的设置?

在Visual Studio解决方案中打开settings.settings ; 添加应用程序设置(即将范围从“用户”更改为“应用程序”)。

IDE将创建一个可在代码中使用的支持类。

  • 应用程序设置

  • 应用程序设置概述

  • 使用应用程序设置和用户设置

  • 应用程序设置架构

应避免使用注册表。

app.exe.config和user.config文件的位置将根据应用程序的安装方式而有所不同。 对于复制到本地计算机上的基于Windows窗体的应用程序,app.exe.config将驻留在与应用程序主可执行文件的基目录相同的目录中,user.config将驻留在Application.LocalUserAppDataPath指定的位置属性。 对于通过ClickOnce安装的应用程序,这两个文件都将驻留在%InstallRoot%\ Documents and Settings \ username \ Local Settings下的ClickOnce数据目录中。

请参阅Windows窗体的应用程序设置 。 即使它是关于Windows窗体,它也可以用于其他类似的应用程序。

没有充分理由不要使用注册表。