如何在运行时读取/写入 app.config 设置而不使用用户设置?

2024-03-02

我正在寻找一种存储应用程序或机器级别设置的方法,可以使用以下命令在运行时写入这些设置:应用程序设置 http://msdn.microsoft.com/en-us/library/k4s6c3a0.aspx。用户设置允许读/写,但应用程序设置不允许。我一直在使用用户设置在运行时保存这样的设置,但事实证明这实际上是不切实际的,原因如下:

  • 机器的所有用户都需要共享设置。
  • 在支持电话中(尤其是在危机情况下),很难向用户/员工解释在哪里手动查找和修改这些设置(appdata 是一个隐藏文件夹)。
  • 该应用程序的新版本需要使用以前的设置(用户设置似乎被新版本所取代)。
  • 我们的员工通常会将应用程序复制到新文件夹,这也会重置用户设置。

无论如何,我们公司的机器仅由一名用户使用,因此通常不需要用户特定的设置。

否则,我真的很喜欢使用应用程序设置,并且如果可能的话希望继续使用它们。如果设置可以驻留在与 EXE 相同的文件夹(就像以前好的 ol' ini 文件一样)。

NOTE:这是一个 WPF 应用程序,而不是 ASP.net Web 应用程序,因此没有 web.config。


好吧,我还不想在运行时更改应用程序设置(这就是我使用用户设置的目的),但我能够做的是在安装时编写应用程序设置。我想类似的方法可能会在运行时起作用。您可以尝试一下,因为似乎没有任何其他建议的 ATM 解决方案。

    exePath = Path.Combine( exePath, "MyApp.exe" );
    Configuration config = ConfigurationManager.OpenExeConfiguration( exePath );
    var setting = config.AppSettings.Settings[SettingKey];
    if (setting != null)
    {
        setting.Value = newValue;
    }
    else
    {
        config.AppSettings.Settings.Add( SettingKey, newValue);
    }

    config.Save();

希望有帮助!

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何在运行时读取/写入 app.config 设置而不使用用户设置? 的相关文章

  • 为什么Apache MPM prefork.c 使用互斥体来保护accept()?

    我坐下来读书Apache 的 MPM prefork c http code metager de source xref apache httpd server mpm prefork prefork c这段代码使用了一个名为accept
  • 在 C# 中生成 HMAC-SHA1

    我正在尝试使用 C 来使用 REST API API 创建者提供了以下用于 hmac 创建的伪代码 var key1 sha1 body var key2 key1 SECRET KEY var key3 sha1 key2 var sig
  • SSL/TLS/HTTPS 站点在 C#/.NET WebBrowser 控件中非常慢,但在 Internet Explorer 中则很好

    背景 我正在修改自动维基浏览器 http en wikipedia org wiki Wikipedia AutoWikiBrowser使用托管在安全服务器上的 MediaWiki 站点 我允许用户通过 C 应用程序中的 WebBrowse
  • 如何尝试/捕获所有异常

    我正在完成由其他人启动的 UWP 应用程序 该应用程序经常崩溃 我总是陷入困境应用程序 at if global System Diagnostics Debugger IsAttached global System Diagnostic
  • CultureInfo 的实例(来自相同的文化)根据操作系统而变化

    我有一个网站 上面写着这样的日期 CultureInfo cultureInfo CultureInfo GetCultures CultureTypes AllCultures FirstOrDefault c gt string Equ
  • 将字符串中的“奇怪”字符转换为罗马字符

    我需要能够将用户输入仅转换为 a z 罗马字符 不区分大小写 所以 我感兴趣的角色只有26个 然而 用户可以输入他们想要的任何 形式 的字符 西班牙语 n 法语 e 和德语 u 都可以包含用户输入中的重音符号 这些重音符号会被程序删除 我已
  • 带 If 的嵌套 For 循环的时间复杂度

    void f int n for int i 1 i lt n i if i int sqrt n 0 for int k 0 k lt pow i 3 k do something 我的思考过程 执行if语句的次数 sum i 1 to
  • 对 boost 库的依赖项没有完整路径

    我已经成功构建了动态库 依赖于使用自定义前缀构建和安装的 boost 库 b2 install prefix PREFIX 然而 当我跑步时otool L在我的库中 我得到如下输出 libboost regex dylib compatib
  • 将带有 glut 的点击坐标添加到向量链接列表中

    我想创建一个向量链接列表 并在 GLUT 库的帮助下获取点击的位置并将它们附加到链接列表中 这些是我写的结构 typedef struct vector int x int y Vector typedef struct VectorLis
  • 如何在 C++ 中将 CString 转换为 double?

    我如何转换CString to a double在 C 中 Unicode 支持也很好 Thanks A CString可以转换为LPCTSTR 这基本上是一个const char const wchar t 在 Unicode 版本中 知
  • 从成员函数指针类型生成函子

    我正在尝试简化 通过make fn 预处理参数的函子的生成 通过wrap 对于 arity 的成员函数n 生成函子基本上可以工作 但到目前为止只能通过显式指定成员函数的参数类型来实现 现在我想从它处理的成员函数类型生成正确的函子 struc
  • C# 委托责任链

    为了我的理解目的 我实现了责任链模式 Abstract Base Type public abstract class CustomerServiceDesk protected CustomerServiceDesk nextHandle
  • OpenCV 2.4.3 中的阴影去除

    我正在使用 OpenCV 2 4 3 最新版本 使用内置的视频流检测前景GMG http docs opencv org modules gpu doc video html highlight gmg gpu 3a 3aGMG GPU算法
  • 从 R 到 C 处理列表并访问它

    我想使用从 R 获得的 C 列表 我意识到这个问题与此非常相似 使用 call 在 R 和 C 之间传递数据帧 https stackoverflow com questions 6658168 passing a data frame f
  • 为什么要在 C++ 中使用 typedef?

    可以说我有 set
  • 初始化 LPCTSTR /LPCWSTR [重复]

    这个问题在这里已经有答案了 我很难理解并使其正常工作 基本上归结为我无法成功初始化这种类型的变量 它需要有说的内容7 2E25DC9D 0 USB003 有人可以解释 展示这种类型的正确初始化和类似的值吗 我已查看此站点上的所有帮助 将项目
  • 从 Delphi 调用 C# dll

    我用单一方法编写了 Net 3 5 dll 由Delphi exe调用 不幸的是它不起作用 步骤 1 使用以下代码创建 C 3 5 dll public class MyDllClass public static int MyDllMet
  • C 中带有指针的结构的内存开销[重复]

    这个问题在这里已经有答案了 我意识到当我的结构包含指针时 它们会产生内存开销 这里有一个例子 typedef struct int num1 int num2 myStruct1 typedef struct int p int num2
  • C++、三元运算符、std::cout

    如何使用 C 用三元运算符编写以下条件 int condition1 condition2 condition3 int double result int or double std cout lt lt condition1 resul
  • 以 UTF8 而不是 UTF16 输出 DataTable XML

    我有一个 DataTable 我正在使用 WriteXML 创建一个 XML 文件 尽管我在以 UTF 16 编码导出它时遇到问题 并且似乎没有明显的方法来更改它 我了解 NET 在字符串内部使用 UTF 16 这是正确的吗 然后 我通过

随机推荐

  • 编辑字典列表中的值?

    my dicts key1 value1 key2 value2 key1 value1 key2 value2 key1 value1 key2 value2 将 value2 的所有实例替换为 value3 的最有效方法是什么 我没有做
  • TDE 启用对数据库性能有何影响?

    如果我在数据库上使用透明数据加密 会对数据库性能产生任何影响吗 这会导致数据库索引出现问题吗 有些人已经对此进行了测试 参见here http www databasejournal com features mssql article p
  • 跨行对 Pandas 数据框进行分组

    我有一个这样的csv client1 client2 client3 client4 client5 client6 amount Comp1 4 475000 Comp2 16 305584 Comp3 4 050000 Comp2 Co
  • Android 上的电子邮件活动

    我想从 Android 虚拟机发送电子邮件到我的 Gmail 帐户 问题 但是按下发送按钮后我得到 没有应用程序可以执行此操作 这是我的代码 Intent sendIntent new Intent Intent ACTION SEND s
  • GWT 中自动登录的会话和 Cookie

    我知道已经有很多问题了 但我似乎仍然没有找到明确的答案 我想要做的是让用户在登录两周后或直到他们注销之前被记住 以下是我认为应该发生的事情 我想知道是否有更多经验的人可以告诉我我是对还是错 用户首次登录 对服务器的 RPC 调用返回一个 U
  • 如何发布c# windows应用程序安装程序

    我正在尝试发布 C Windows 应用程序 我尝试安装 Shield 和 Visual Studio 安装程序 但它无法正常工作 此安装程序只能安装在安装了 Visual Studio 的笔记本电脑或 PC 上 谁能帮助我需要什么先决条件
  • 使用 gridsearchcv 的内存泄漏

    Problem 我的情况似乎是运行 gridsearchcv 时出现内存泄漏 当我运行 1 或 32 个并发工作线程 n jobs 1 时 会发生这种情况 以前我在 ubuntu 16 04 上运行过多次 没有出现任何问题 但最近升级到 1
  • 当资源无法调用其他步骤并重试抛出异常的同一步骤时,如何处理 FlatFileItemReader 异常?

    我正在使用 Spring Batch 远程分区 我的第一步为所有其他步骤准备输入文件 其他步骤处理输入文件 要在所有 4 台服务器上创建输入文件 我的第一步应该在所有服务器上运行 因此 我在所有服务器上设置了消费者并发数 1 网格大小 4
  • 从 UICollectionViewCell 呈现 UIPopoverController

    我希望通过 UICollectionViewCell 上的按钮呈现 UIPopoverController 到目前为止 一切都创建正常 但弹出窗口不可见 有什么特殊的方法可以做到这一点吗 如果我从集合视图单元格以外的任何其他位置显示该代码
  • 推荐一些类似于 Bresenham 的二维球面映射算法?

    我需要最快的球体映射算法 就像布雷森纳姆的线条画一样 类似于我在 Star Control 2 旋转行星 中看到的实现 是否有任何已经发明和 或实施的技术 我真的不想重新发明自行车 请帮忙 问题描述 我在 2D 表面上有一个必须出现球体的位
  • “setup”命名空间中没有定义命令:Magento 2

    我已经安装了latest version of Megento 2 前端 后端和功能一切正常 我有一个问题bin magento setup upgrade命令 当我在终端中运行此命令时 我得到以下异常 无效参数异常 setup 命名空间中
  • 使用 UIKitForMac 时“令牌不是预处理器子表达式中的有效二元运算符”

    所以我正在尝试为 mac 编译我的 iOS 项目 当我尝试使用 if targetEnvironment UIKitForMac 我从标题中得到了错误 我尝试将构建目标设置为 iOS 13 但似乎没有任何效果 Objective C if
  • 元素内的“u”属性

    由于我无法搜索到有意义的结果 因此我无法确定这不是重复的 但是 我在网站上运行 JSSOR 滑块 并且某些元素具有 u 属性 例如 div style width 100 height 500px 当我通过 W3 验证器运行此 u slid
  • 是否有 R 函数用于查找向量中元素的索引?

    在 R 中 我有一个元素x和一个向量v 我想找到一个元素的第一个索引v等于x 我知道做到这一点的一种方法是 which x v 1 但这似乎效率太低了 有没有更直接的方法来做到这一点 对于奖励积分 是否有一个功能可以在以下情况下工作 x是一
  • Angular2 在 ngSwitch 新视图创建后调用自定义函数

    我正在使用创建一个小应用程序Angular2 Ionic2 在这个应用程序中我想初始化google map into view segment当用户切换到map segment using ion segment 以下是示例代码结构
  • 如何暂时禁用Spring缓存的缓存

    我有一个 spring bean 注释为 Cacheable像这样定义的注释 Service public class MyCacheableBeanImpl implements MyCacheableBean Override Cach
  • 使用drawImage 进行裁剪在Safari 中不起作用

    我正在使用画布开发一些简单的图像处理功能 用户上传图像 能够旋转和裁剪图像 然后单击 确定 然后将图像分成两半 每一半绘制镜像到两个画布元素 如下所示 Original https i stack imgur com Bty5R jpg M
  • 相同分辨率设备 1080x1920 中的 Android 间距问题

    我正在设计 Zeplin 的屏幕 Zeplin在dp中提供了每个项目的属性 以下是水平回收器视图Zeplin 的 4 个项目的设计示例 对于 xxhdpi 设备 360 dp 意味着 1080 我正在两台具有不同 dpi 的 1080 设备
  • 括号配对 ({}[]()<>) 问题

    我希望能够将字符串中的所有括号配对 如果它们没有配对 那么它们会得到索引号和 False 看起来它一遍又一遍地重复一些值 即 cl pop 1 我试图找出问题出在哪里 但无论我如何努力 我都看不到它 所以我问是否有人帮助我找到错误 甚至改进
  • 如何在运行时读取/写入 app.config 设置而不使用用户设置?

    我正在寻找一种存储应用程序或机器级别设置的方法 可以使用以下命令在运行时写入这些设置 应用程序设置 http msdn microsoft com en us library k4s6c3a0 aspx 用户设置允许读 写 但应用程序设置不