VB.NET Windows服务的位置My.Settings - 设置

时间:2011-09-22 13:29:33

标签: vb.net windows-services application-settings

我有一个在Visual Studio 2010中构建的VB.NET解决方案。它包含一个类项目,一个服务和一个安装项目。我已成功创建了一个设置,并从安装项目的“Release”目录(Visual Studio外部)运行安装程序。它安装了服务(与项目所在的机器相同),服务似乎运行正常。服务可执行文件安装在c:\ program files(x86)\下的目录中,以及它所依赖的一些DLL。

该服务(实际上是我上面提到的类项目)使用My.Settings中的一些设置。据我所知,这些设置存储在项目目录中的app.config文件中,以及项目目录下My Project目录下的settings.settings文件中。

安装程序未安装这些文件。但该服务只有在能够读取设置时才能运行。那么我的服务从哪里获得这些设置?为了检查它是否仍然从VS项目目录中读取设置,我暂时重命名了该目录,但这并没有影响服务的正确操作。

3 个答案:

答案 0 :(得分:1)

看看这条路。找到您的服务名称并向下导航,直到找到user.config C:\ WINDOWS \ system32 \设置\ systemprofile \应用程序数据\本地\ user.config仅具有服务已更新的设置,其他设置将在服务安装路径的exe.config中更新。

Protected Overrides Sub OnStart(ByVal args() As String)
    My.Settings.TimerMsInterval = thisTimer.Interval
    My.Settings.MoreMsgs = My.Settings.MoreMsgs
    My.Settings.LastTime = My.Settings.LastTime
    My.Settings.Save()
EventLog.WriteEntry("Startup Parameters: TimerMsInterval: LastTime: MoreMsgs " & thisTimer.Interval.ToString & " : " & My.Settings.LastTime & " : " & My.Settings.MoreMsgs)
End Sub

答案 1 :(得分:0)

查看虚拟商店C:\ Users \ User_name \ AppData \ Local \ VirtualStore \

答案 2 :(得分:0)

我自己找到了答案:类项目的设置存储在类项目DLL文件中。因此,在安装了服务(使用此DLL)后,无法对其进行编辑。