标签: configuration-files

VB.Net 如何读/写自定义配置文件

环境:.Net 3.5 VB.net(C#也可以)

我编写了一个多项目 WinForms 应用程序,需要根据用户选择的客户端从配置文件的客户端部分加载几十个变量。还需要加载一些程序变量。到目前为止一切顺利,我把它们放在一个app.config文件中。

在本appSettings节中,我放置了主程序变量。例如

<appSettings> 
    <add key="LocalServerName" value="PHILDESKTOP" />
Run Code Online (Sandbox Code Playgroud)

ClientParameters为可选择的部分创建了一个部分。例如

<ClientParameters>  
    <Cust1>  
        <setting name="ClientName"   serializeAs="String">  
            <value>Customer Name 1</value>  
        </setting>
Run Code Online (Sandbox Code Playgroud)

这是我的问题:

  • 我使用 Click Once 进行部署,但app.exe.config很难找到该文件进行更改

  • 我发现该app.config文件出于充分的原因不可写......它在程序启动期间加载到内存中。

  • 我发现我需要管理员才能在部署后添加/更新客户端部分参数。我想用某种ListView东西来编程这种能力。

  • 我认为我编写了糟糕的代码,必须迭代才能找到设置,请参见下文

      Dim sectionName As String
      sectionName = "ClientParameters/" + ClientCode
      Dim section As System.Configuration.ClientSettingsSection = _
         DirectCast(System.Configuration.ConfigurationManager.GetSection(sectionName),  _
         System.Configuration.ClientSettingsSection)
      For Each setting As System.Configuration.SettingElement In section.Settings
          Dim value As String = setting.Value.ValueXml.InnerText
          Dim name As String = setting.Name
          If …
    Run Code Online (Sandbox Code Playgroud)

vb.net configuration-files

1
推荐指数
1
解决办法
4万
查看次数

C# 中配置文件之间的切换

这里我有两个config文件,我需要config在这些文件之间切换C#

例子:

  1. app.config
  2. address.config

我需要在运行时从 更改app.config为 来address.config获取数据。

我尝试了下面的代码:

System.Configuration.Configuration config
    = ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None);
        config.AppSettings.File = runtimeconfigfile;
        config.Save(ConfigurationSaveMode.Modified);
        ConfigurationManager.RefreshSection("appSettings");
Run Code Online (Sandbox Code Playgroud)

c# app-config configuration-files

1
推荐指数
1
解决办法
1297
查看次数

使用S3存储应用程序配置文件

我正在创建一个简单的 Web 应用程序,需要部署到 AWS 中的多个区域。该应用程序需要一些由单独的服务管理的动态配置。当通过此服务更改配置时,我需要将这些更改传播到所有区域的所有 Web 应用程序实例。

我考虑使用 DynamoDB 的跨区域复制来实现此目的,但我不想增加在每个区域运行 DynamoDB 和复制控制台的成本。然后我就想到使用S3,本质上是跨区域的。

基本上,配置服务会将所有配置作为静态 JSON 文件写入 S3。每个 Web 应用程序实例都会定期检查 S3,以查看自上次检查以来是否有任何配置文件发生更改,并在必要时下载新的配置。配置更改对时间不敏感,因此每 5/10 分钟轮询一次更改就足够了。

你们中有人以前使用过类似的方法来管理应用程序配置吗?您认为这是一个明智的解决方案,或者您有更好的建议吗?

configuration-files amazon-s3 amazon-ec2 amazon-web-services amazon-dynamodb

1
推荐指数
1
解决办法
5842
查看次数

VIM按照什么顺序加载哪个配置文件?

我刚刚找到了一些关于 VIM 问题的 stackoverflow 答案,并且非常困惑为什么我设置的配置参数没有按照这些答案中的建议工作。事实证明,它们只是被覆盖了,但我不知道其他 VIM 配置文件!所以我想知道:

a) VIM 按照什么顺序加载哪个配置文件?(如果我了解了这一点,我很可能能够解决下一个问题。)

b)我想加载所有默认值,然后专门启用/禁用一些设置。我必须在哪个配置文件中定义它?

请记住,我正在努力避免配置文件中的疯狂黑客行为。下一次系统更新可能会覆盖它们。因此,我试图找到一种如何使用/etc/vim/vimrc.local或类似的配置文件来覆盖所有现有设置的方法。但是如果加载完之后 又加载了其他配置文件,这个就没用了/etc/vim/vimrc.local。为了实现这一点,我尝试/usr/share/vim/vim80/defaults.vim显式加载/etc/vim/vimrc.local,然后设置g:skip_defaults_vim1显式以避免 VIM 稍后再次加载它。正如我所看到的,这不能作为我自己的设置被/etc/vim/vimrc.local覆盖。但是,如果我/etc/vim/vimrc.local从正在运行的 VIM 实例中显式加载,我的设置不会被覆盖。我觉得这很令人困惑。有人对此有什么想法吗?任何帮助表示赞赏!

vim configuration-files

1
推荐指数
1
解决办法
3158
查看次数

仅头文件库的配置 (C++)

我正在用 C++ 编写一个仅包含头文件的库。使事情尽可能简单,用户只需#include mylib.h

在某些情况下,(高级)用户可能想要配置库的行为(例如错误处理、编译时或运行时检查、调试输出以及可能的其他内容)

请不要告诉我执行此操作的最佳方法(甚至标准方法),因为否则问题将被搁置!

现在,我有一个文件“config.h”作为我的库的一部分,其中包含相关内容,#define MYLIB_XYZs但我意识到这完全是无稽之谈,因为用户需要修改库本身才能进行配置。

c++ config configuration-files header-files lib

1
推荐指数
1
解决办法
819
查看次数

来自 ConfigParser 的就地替换

我手头有一个非常棘手的情况(就我的标准而言)。我有一个脚本需要从ConfigParser读取脚本变量名称。例如,我需要阅读

self.post.id
Run Code Online (Sandbox Code Playgroud)

从 .cfg 文件并将其用作脚本中的变量。我如何实现这一目标?

我想我的查询不清楚。.cfg 文件类似于:

[head]
test: me
some variable : self.post.id
Run Code Online (Sandbox Code Playgroud)

这个 self.post.id 将在运行时被替换,从脚本中获取值。

python configuration-files

0
推荐指数
1
解决办法
4691
查看次数

如何保存配置文件/ python文件IO

我有这个python代码用于打开.cfg文件,写入并保存它:

import ConfigParser 

    def get_lock_file():
        cf = ConfigParser.ConfigParser()
        cf.read("svn.lock")
        return cf
    def save_lock_file(configurationParser):
        cf = configurationParser
        config_file = open('svn.lock', 'w')
        cf.write(config_file)
        config_file.close()
Run Code Online (Sandbox Code Playgroud)

这看起来是正常的还是我错过了一些关于如何打开写保存文件的东西?是否有更标准的方式来读取和写入配置文件?

我问,因为我有两个似乎做同样事情的方法,他们得到配置文件句柄('cf')调用cf.set('blah','foo'bar)然后使用上面的save_lock_file(cf)调用.对于一种方法,它起作用,而对于另一种方法,写入永远不会发生,不确定为什么在这一点上.

def used_like_this():
        cf = get_lock_file()
        cf.set('some_prop_section', 'some_prop', 'some_value')
        save_lock_file(cf)
Run Code Online (Sandbox Code Playgroud)

python file-io file configuration-files

0
推荐指数
1
解决办法
4430
查看次数

在C#中存储查询的最佳方法

我有一些连接字符串和查询,我需要存储在我的C#程序之外(不能硬编码).现在我正在使用Visual Studio的应用程序配置文件.不幸的是,查询需要从我的程序中运行变量(由用户在运行时选择).

我目前的解决方法是将查询分解为配置文件中的各个部分,然后在程序中重新组合它们.我宁愿避免这种情况,因为它很难从配置文件中读取查询.有没有人有更优雅的解决方案?

c# configuration-files visual-studio-2010

0
推荐指数
1
解决办法
197
查看次数

如何获得 Composer 已知的 PHP 扩展名称?

我需要设置一个具有服务器要求的composer.json(例如php >= 5.6、lib-xml等)。Composer 文档中有一些示例,但我需要的是一种为给定 PHP 扩展或库(例如 php7.1-curl - Ubuntu 软件包名称)获取 Composer 别名(ext-xxx、lib-yyy 等)的方法。

php reference configuration-files composer-php

0
推荐指数
1
解决办法
828
查看次数

“查询数据包太大”错误。在哪里更改 max_allowed_pa​​cket 变量?

我遇到了一个问题,我从 git 导入了一个 spring boot 项目,代码在我的队友计算机中运行得很好,但是我收到一个错误,我不知道如何解决,在运行我的 java 应用程序时出现此错误:

Packet for query is too large (1072729 > 1048576). You can change this value on the server by setting the max_allowed_packet' variable.
Run Code Online (Sandbox Code Playgroud)

我阅读了有关该主题的一些答案,我的理解是我必须在 my.ini 文件中进行更改并更改此值:

max_allowed_packet=500M 
Run Code Online (Sandbox Code Playgroud)

但似乎我无法找到我的文件位置,我正在使用 MySQLWorkebench,并且我不知道在哪里可以找到此文件来进行更改或任何更改。

任何帮助将非常感激。

mysql configuration-files mysql-workbench spring-boot

0
推荐指数
1
解决办法
7887
查看次数

如何使 Trace32 路径适用于所有其他用户?

config.t32安装时命名的配置文件Trace32有一个静态目录,默认为SYS=C:\T32.

当其他用户在其系统中运行此文件时,它不会运行,因为他们安装Trace32 在不同的位置

我怎样才能解决这个问题并使这条路径适用于所有用户。

directory configuration-files trace32 lauterbach

0
推荐指数
1
解决办法
1103
查看次数

dbus 接口 xml 文件的用途是什么?

我正在阅读D-Bus API 设计指南

公共API的接口文件应安装到$(datadir)/dbus-1/interfaces,以便其他服务可以加载它们。

好的...为了了解这些接口文件的工作原理,我打开该文件/usr/share/dbus-1/interfaces/org.gnome.Shell.Screenshot.xml(我使用的是 Ubuntu 20.04)

<node>
  <interface name="org.gnome.Shell.Screenshot">
  ...
    <method name="PickColor">
      <arg type="a{sv}" direction="out" name="result"/>
    </method>
Run Code Online (Sandbox Code Playgroud)

好吧,我看到了接口名称,我看到了方法名称,但这还不够。如果我想使用调用这个方法dbus-send

$ dbus-send --print-reply --dest=<service.name> </path/to/object> org.gnome.Shell.Screenshot.PickColor
Run Code Online (Sandbox Code Playgroud)

我需要<service.name><path/to/object>,该xml文件没有提供。

问题是:如果该文件没有提供有关服务接口的完整信息,那么该文件的用途是什么?它是否被dbus-daemon其他程序使用?某些东西真的需要这样的文件吗?我是否应该得出这样的结论:未提供 中对象路径的 xml 文件是不完整的?此类文件是否还应该提及服务已知名称(org.gnome.Shell.Screenshot在本例中)?

dbus configuration-files

0
推荐指数
1
解决办法
2068
查看次数

在Perl中加载配置的最佳方法?

我想为我的Perl脚本编写一个输入文件.
此文件包含我的程序的配置.

输入采用Perl格式:

my $var1 = "/home/moon";
my $var2 = 123;
my $var3 = "output.log";
...
Run Code Online (Sandbox Code Playgroud)

我的问题是我不知道如何以这种格式加载此配置文件.有人可以帮忙吗?

perl configuration-files

-2
推荐指数
1
解决办法
3667
查看次数