繁体   English   中英

如何找到Windows服务的.NET版本?

[英]How do you find out the .NET version of a Windows service?

这里有很多关于找出安装了.NET框架的问题。 我知道我已经安装了.NET v4.6.1。

我想找出构建服务的.NET版本。

假设我安装了.NET v2.0的服务(XYZ.exe)。 我对代码进行了更改,并使用.NET v4.6.1生成了另一个同名的可执行文件,并替换了现有的可执行文件(在停止服务之后)。 当我重新启动该服务时,该服务将使用新的可执行文件(.NET v4.6.1)还是已预先加载了所使用的旧可执行文件(.NET v2.0)的代码?

所以我认为这就是答案。 如果有人评论我会很高兴。

我们可以进入注册表到这一级别:

HKEY_LOCAL_MACHINE\\SYSTEM\\ControlSet001\\services\\eventlog\\Application\\<your_service_name>

然后,我们查看键EventMessageFile的值,它将为您显示已安装服务的.NET版本。

编辑:

仅当使用InstallUtil.exe安装Windows服务时,此注册表项才会出现。 但是,如果Windows服务是使用SC.exe安装的,则注册表项将出现在:

HKEY_LOCAL_MACHINE\\SYSTEM\\ControlSet001\\services\\<your_service_name>

右键单击相关的DLL,然后在属性中找到其版本。 另外,如果您正在开发-请注意,DLL可能会从GAC而不是从DLL加载

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM