.net core 无法在Windows Server 2008 R2中运行dotnet core 2控制台应用程序

.net core 无法在Windows Server 2008 R2中运行dotnet core 2控制台应用程序,.net-core,windows-services,autofac,windows-server-2008-r2,topshelf,.net Core,Windows Services,Autofac,Windows Server 2008 R2,Topshelf,我正在使用TopShelf和DotnetCore2框架开发一个windows服务应用程序。为了创建它,我使用了控制台应用(.netcore)模板。现在,为了部署该应用程序,我创建了一个发布配置文件,以便在本地进行部署。内容如下: <Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> <PropertyGroup> <PublishProt

我正在使用TopShelf和DotnetCore2框架开发一个windows服务应用程序。为了创建它,我使用了控制台应用(.netcore)模板。现在,为了部署该应用程序,我创建了一个发布配置文件,以便在本地进行部署。内容如下:

<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
 <PropertyGroup>
  <PublishProtocol>FileSystem</PublishProtocol>
  <Configuration>Release</Configuration>
  <TargetFramework>netcoreapp2.0</TargetFramework>
  <PublishDir>C:\Repos\Deployments\MassTransit.Consumer</PublishDir>
  <Platform>Any CPU</Platform>
  <SelfContained>true</SelfContained>
  <_IsPortable>true</_IsPortable>
  <RuntimeIdentifier>win7-x64</RuntimeIdentifier>
</PropertyGroup>

文件系统
释放
netcoreapp2.0
C:\Repos\Deployments\masstTransit.Consumer
任何CPU
真的
真的
win7-x64

正如您所看到的,RuntineIdentifier是win7-x64,根据这一点,它应该是在WindowsServer2008R2中运行应用程序的正确标识符。当我将应用程序部署到本地文件夹时,我可以在执行生成的.exe的计算机中运行它而不会出现问题,但是当我尝试在Windows server 2008 R2中运行它,复制Windows server中本地文件夹的所有文件时,我会遇到badimageformatexception bad il格式错误

在windows中安装了服务器Dotnetcore.2.0.5-WindowsHostingDotnet-sdk-2.1.105-win64

仅供参考,我有一个web api core 2应用程序在该服务器的IIS下运行,如果我在cmd.exe中运行dotnet--version,它将返回2.1.0.105,因此它会识别安装了dotnet core

在Windows Server 2008 R2中运行console应用程序时,有没有任何线索告诉我为什么会出现此错误。我还需要安装其他东西吗?或者,我是否需要更改发布配置文件中的某些内容

更新 我很确定加载时黄线出现了异常。From:


我正在使用该代码加载自定义库,这些库包含应用程序启动时需要注册的Autofac模块。

这不是服务器的问题。这是因为我试图匹配的模式包含在文件名(路径)中,因此它加载了错误的程序集,如
hostfrx.dll
hostpolicy.dll


它是在本地运行的,因为在我部署项目后会显示此程序集。

您确定您拥有在服务器上运行应用程序所需的所有DLL吗?是的,我复制了发布项目时生成的所有文件,并且该程序集在我的本地计算机上运行。我还使用了
dotnetpublish
命令,结果也是一样的。我运行的命令是
dotnetpublish-c Release-r win7-x64
。当我的dll缺少控制台时,让我知道我需要添加什么文件,它会给出指向的错误。您过去是否在Windows Server 2008 R2中运行过console dotnet core 2控制台应用程序?对于Windows 7和Server 2008 R2,文档中应该列出了其他依赖项。您好@LexLi,我已经用新信息更新了问题,您知道可能是什么吗?