service - 我在 Windows 服务中收到 system.configuration.settingspropertynotfoundexception 错误

标签 service windows-services system.configuration

我有一个 Windows 应用程序,它使用 SettingsProvider 读取配置设置并在文件不存在时设置默认值。

正常运行效果良好。

我正在尝试编写一个启动此应用程序的 Windows 服务。当它由服务运行时,我在所有设置属性上收到 System.Configuration.SettingsPropertyNotFoundException

当服务运行应用程序时,如何解决此异常?

最佳答案

这仅仅意味着应用程序无法读取.Settings 文件。我可以想到两个可能的原因:

  1. 该服务在无权访问 .settings 文件的帐户下运行。 (或 .config 文件,具体取决于)这不太可能,因为服务可以启动应用程序,并且它拥有应用程序的权限而不是设置文件的权限是没有意义的。

  2. 运行时无法找到设置文件。它期望设置位于可执行文件的根启动路径中。检查并确保它存在于相关计算机上。

然而,谷歌的结果发现了一个我没有想到的明显的可能原因。 .settings 是在上次编译后添加的吗?在 Visual Studio 中编译应用程序,然后重试...

关于service - 我在 Windows 服务中收到 system.configuration.settingspropertynotfoundexception 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8404832/

相关文章:

java - 使用绑定(bind)程序调用服务方法时如何使用线程

python - 如何使用 cx_Freeze 安装 Python Windows 服务?

android - 为什么服务在 BOOT_COMPLETED 后不启动?

windows - Tomcat如何将其可执行文件设置为Windows服务?

.net - 需要创建一个也保存类型的动态 ConfigurationSection

c++ - 如何创建在崩溃时重新启动的服务

c++ - C++ 中的 Windows 服务

Windows服务登录正常,但无法访问共享网络文件夹

c# - 为什么即使 IsRequired 为真,ConfigurationValidator 也会验证 ConfigurationProperty 的默认值?

c# - 使用 ConfigurationPropertyAttribute 避免重复属性名称 3 次