保存应用程序首选项…注册表/文件
存储应用程序首选项的最佳位置在哪里?
特别是,我想保存媒体播放器的首选项,如音量级别等。 两个候选人脑海中浮现……文件和注册表。 哪个更合适?
作为后续内容,我还想知道是否有任何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窗体,它也可以用于其他类似的应用程序。
没有充分理由不要使用注册表。
- 从C#将表类型对象作为输入参数传递给Oracle中的存储过程
- 屏幕捕获和无损编解码器,.net
- 为什么OnClosing已经过时,我应该迁移到OnFormClosing
- 如何确定Console.Out是否已重定向到文件?
- .net中的对象复制方法:自动映射器,发射映射器,隐式操作,属性复制
- “对话框必须由用户启动。”使用Silverlight 3中的SaveFileDialog
- 当`PostAuthenticateRequest`被执行时?
- 从lambda表达式方法参数中获取结束值
- 在构造ExtendedPropertyDefinition时,我应该使用GUID还是DefaultExtendedPropertySet.PublicStrings?