Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/fsharp/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
.net core 如何为f#应用程序设置Windows资源管理器图标_.net Core_F# - Fatal编程技术网

.net core 如何为f#应用程序设置Windows资源管理器图标

.net core 如何为f#应用程序设置Windows资源管理器图标,.net-core,f#,.net Core,F#,如何使用.NET Core 3.0或3.1创建简单的f#netcoreapp。在Windows资源管理器中查看时是否显示应用程序图标 这就像是提出了一个问题,但解决方案似乎不适用于使用.NET Core 3.0或3.1 SDK构建的应用程序 我已创建了一个资源文件,并尝试使用命令行编译应用程序和添加图标资源: fsc Program.fs--win32res:AppIcon.res--target:exe 在这种情况下,应用程序可以编译,但我没有获得Windows资源管理器图标 我还尝试使用带有

如何使用.NET Core 3.0或3.1创建简单的f#netcoreapp。在Windows资源管理器中查看时是否显示应用程序图标

这就像是提出了一个问题,但解决方案似乎不适用于使用.NET Core 3.0或3.1 SDK构建的应用程序

我已创建了一个资源文件,并尝试使用命令行编译应用程序和添加图标资源:

fsc Program.fs--win32res:AppIcon.res--target:exe

在这种情况下,应用程序可以编译,但我没有获得Windows资源管理器图标

我还尝试使用带有以下fsproj文件的dotnet cli构建和发布(dotnet publish ConsoleApp1.fsproj-c Release--self-contained-r win7-x64-o publish)

在本例中,项目未编译,我收到一个错误“error MSB4018:“CreateAppHost”任务意外失败”

任何帮助都将不胜感激


温克斯
netcoreapp3.0
--win32res:AppIcon.res
总是
尝试以下操作(使用项目文件夹中的.ico文件):


再平衡
保存最新

看来我已经解决了这个问题。我回去查看了VisualStudio中的资源文件,发现该文件似乎存在问题

我使用了“C:\ProgramFiles(x86)\Windows Kits\10\bin\10.0.18362.0\x64\rc.exe”/v AppIcon.rc”来生成res文件。也许它坏了?即使在这种状态下,我仍然能够在VisualStudio中查看ico。无论如何,我从res中删除了损坏的ico文件,然后通过visualstudio手动将其添加回。这一次,Visual Studio似乎识别了该文件

我用这个res文件继续我的努力。我重新运行了命令行dotnet publish TestIconRes.fsproj-c Release--self-contained-r win7-x64-o publish,这次从Windows资源管理器中可以看到应用程序图标

fsc Program.fs--win32res:AppIcon.res也可以工作

最终的fsproj文件如下所示:


温克斯
netcoreapp3.0
--win32res:AppIcon.res

我也发现了这个问题,并按照Scott Hutchinson的建议在.NET Core中为PropertyGroup提交了一个问题作为解决方案


非常感谢您的建议。我无法使此版本的项目文件添加显示在Windows资源管理器中的图标。在我发布问题时,似乎有一个未发现的问题导致了这个问题(见下面我的答案)
  <PropertyGroup>
    <ApplicationIcon>rebalance.ico</ApplicationIcon>
  </PropertyGroup>
  <ItemGroup>
    <Content Include="rebalance.ico">
      <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
    </Content>
  </ItemGroup>