【问题标题】:Application ignoring settings in MyApplication.exe.config应用程序忽略 MyApplication.exe.config 中的设置
【发布时间】:2012-08-04 19:19:36
【问题描述】:

我正在使用在 Windows XP 下运行的具有应用程序设置的 vb.net Windows 窗体应用程序。

vs 2010 解决方案创建了一个 MyApplication.exe.config,但是当我使用记事本编辑文件时,即使在重新启动后应用程序也会忽略更改。即使我删除了 exe.config 文件,应用程序仍然使用编译时的设置。所以我决定用十六进制编辑器查看 exe 文件,发现设置被编码到 exe 中。

用户范围的设置正确保留,但它们的默认值不是来自 exe.config 而是来自其他地方。

我的应用程序是否有问题,或者这是 VB.Net Windows 窗体应用程序通常的工作方式?

我通常使用 C# 开发控制台或服务应用程序,在其中我可以毫无问题地编辑 exe.config。

有问题的行:

If My.Settings.UseLocalOrGlobalSettingForOutputFolder.ToUpper.Equals("LOCAL") Then

exe.config 文件看起来很正常

<applicationSettings>
    <DHModule.My.MySettings>
        <setting name="UseLocalOrGlobalSettingForOutputFolder" serializeAs="String">
            <value>Local</value>
        </setting>

这是一个 Visual Studio 2010 解决方案,其中包含大约 20 个项目,包括一个安装项目。我已删除并重建了相关项目。

我已经没有时间允许这个项目所以.....

注意:我将通过不使用任何应用程序范围的设置来解决此问题。

注意:我将通过不使用任何应用程序范围的设置来解决此问题。

注意:我将通过不使用任何应用程序范围的设置来解决此问题。

【问题讨论】:

  • Project + Properties,Debug 选项卡,取消勾选“Enable the Visual Studio hosting process”选项。这样将使用 MyApplication.exe.config 而不是 MyApplication.vshost.exe.config
  • 问题不在开发机器上。它发生在安装它的机器上。
  • 你能显示你访问设置的代码吗?你在使用“我的”命名空间吗?
  • 是应用程序设置还是用户设置?我怀疑用户设置。
  • 奇怪的是,用户设置工作正常。

标签: vb.net winforms windows-xp


【解决方案1】:

在 app.config 对于正在运行的可执行文件查看 &lt;configuration&gt; &lt;configSections&gt; &lt;sectionGroup&gt; 并确保该部分存在:&lt;section name="DHModule.My.MySettings"...

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-01-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多