加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > Windows > 正文

Windows服务在从3.5迁移的Windows Server 2008,x64,.NET 4上引发

发布时间:2020-12-14 02:53:25 所属栏目:Windows 来源:网络整理
导读:我已经尝试将服务EXE文件编译为AnyCPU,x86和x64.它适用于我的 Windows 7 x64盒子.我正在安装installutil,.NET 4版本. 当我启动服务时,我收到错误.它没有说什么,但它确实指出了哪些模块被加载.那些有潜在兴趣的人: LoadedModule[0]=D:yellowbookgrapevine_
我已经尝试将服务EXE文件编译为AnyCPU,x86和x64.它适用于我的 Windows 7 x64盒子.我正在安装installutil,.NET 4版本.

当我启动服务时,我收到错误.它没有说什么,但它确实指出了哪些模块被加载.那些有潜在兴趣的人:

LoadedModule[0]=D:yellowbookgrapevine_servicegrapevinesystemservice.exe
LoadedModule07001=C:Windowssystem32KERNEL32.dll
LoadedModule07002=C:Windowssystem32KERNELBASE.dll
LoadedModule[9]=C:WindowsMicrosoft.NETFramework64v4.0.30319mscoreei.dll
LoadedModule[17]=C:WindowsMicrosoft.NETFramework64v2.0.50727mscorwks.dll
LoadedModule[18]=C:WindowsWinSxSamd64_microsoft.vc80.crt_1fc8b3b9a1e18e3b_8.0.50727.4927_none_88dce9872fb18cafMSVCR80.dll
LoadedModule[22]=C:WindowsassemblyNativeImages_v2.0.50727_64mscorlib9a017aa8d51322f18a40f414fa35872dmscorlib.ni.dll

我可以使用命令行开关将此服务作为控制台应用程序运行,从而产生以下结果:

Unhandled Exception:
System.BadImageFormatException: Could
not load file or assembly
‘grapevinesystemservice.exe’ or one of
its dependencies. This assembly is
built by a runtime newer than the
currently loaded runtime and cannot be
loaded. File name:
‘grapevinesystemservice.exe’

我试过注册表黑客强制使用最新的运行时.没有效果.我已经查看了已安装的EXE文件,以确保它没有被我的构建服务器获取,但它的目标是4.0.30319.我的本地,构建和测试服务器都有30319作为.NET 4版本.没有人有过beta / RC.

它们没有在加载模块中列出,但我也使用log4net(在.NET 4中从源代码重建),StructureMap,NoRM(MongoDB),AutoMapper,Newtonsoft.Json以及其他一些构建的DLL文件由我的团队.

解决方法

您是否尝试在grapevinesystemservice.exe的配置文件中设置requiredRuntime?像提到的0xA3一样,看起来它没有设置为使用4.0.

<startup>
  <requiredRuntime version="v4.0.20506" safemode="true"/>
</startup>

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读