【发布时间】:2020-06-04 11:28:01
【问题描述】:
当我发布我的应用程序时,它在我的计算机上运行良好,但是当我尝试在另一台计算机上运行它时,它一直要求我下载特定的 .net 核心运行时。我的目标框架是 3.1,它一直要求 3.1.4 运行时或安装 3.1.0 运行时。我下载了一个较新版本的 .net core sdk,它与运行时(3.1.300)一起使用,但仍然没有变化。我尝试将我的 .netcore 框架也更改为 3.1.3,但它仍然只显示 3.1,可能是因为 3.1.3 是 3.1 的一部分。除了在其他用户的计算机上安装 3.1.0 之外,不知道如何解决此问题。
下面是我的csproj:
<Project Sdk="Microsoft.NET.Sdk.WindowsDesktop">
<PropertyGroup>
<OutputType>WinExe</OutputType>
<TargetFramework>netcoreapp3.1</TargetFramework>
<RootNamespace>VRI_configurator</RootNamespace>
<UseWPF>true</UseWPF>
<ApplicationIcon>KHVT.png</ApplicationIcon>
<PackageIcon>KHVT.png</PackageIcon>
<PackageIconUrl />
<StartupObject>VRI_configurator.App</StartupObject>
</PropertyGroup>
<ItemGroup>
<None Remove="Resources\img\KHVT.png" />
<None Include="/Resources/img/KHVT.png">
<Pack>True</Pack>
<PackagePath></PackagePath>
</None>
</ItemGroup>
<ItemGroup>
<Resource Include="Resources\img\KHVT.png" />
<Resource Include="Resources\img\search_icon.png" />
<Resource Include="Resources\img\username_icon.png" />
<Resource Include="Resources\img\password_icon.png" />
</ItemGroup>
<ItemGroup>
<PackageReference Include="MahApps.Metro" Version="2.0.0-alpha0748" />
<PackageReference Include="Microsoft.Xaml.Behaviors.Wpf" Version="1.1.19" />
<PackageReference Include="MySql.Data" Version="8.0.20" />
<PackageReference Include="Prism.Core" Version="7.2.0.1422" />
<PackageReference Include="System.Data.SqlClient" Version="4.8.1" />
</ItemGroup>
<ItemGroup>
<Compile Update="Properties\Resources.Designer.cs">
<DesignTime>True</DesignTime>
<AutoGen>True</AutoGen>
<DependentUpon>Resources.resx</DependentUpon>
</Compile>
</ItemGroup>
<ItemGroup>
<EmbeddedResource Update="Properties\Resources.resx">
<Generator>ResXFileCodeGenerator</Generator>
<LastGenOutput>Resources.Designer.cs</LastGenOutput>
</EmbeddedResource>
</ItemGroup>
</Project>
任何帮助将不胜感激
【问题讨论】:
-
你能编辑你的问题并添加你的 csproj 吗?您的 csproj 的定义方式可能存在问题。
-
在发布配置文件中,您可以将部署模式切换为“自包含”。该设置会将所有必要的运行时文件与应用程序捆绑在一起。
-
如果您编译为 32 位并安装了 64 位版本的框架,您可能会遇到此类问题,反之亦然。