Skip to content

ApplicationIcon does not work when cross building win-x64 from Linux #3943

Closed
@NicolasDorier

Description

@NicolasDorier

How to reproduce

On linux (using Buster 3.0.101):

dotnet new console
# Add myicon.ico to the project
dotnet publish --runtime win-x64 -p:ApplicationIcon=myicon.ico

Grab bin/Debug/netcoreapp3.0/publish/*.exe
Notice that the executable does not show any icon on windows explorer.
The same process on windows works as expected.

Expected

The executable should have the application icon properly set.

Workaround

Post process the .exe with wine and rcedit.exe.
https://github.com/btcpayserver/BTCPayServer.Vault/blob/abf575728b9b1f64bade6cd3a590ed8ac8baf6ee/Build/build.win-x64.Dockerfile#L28

Version

.NET Core SDK (reflecting any global.json):
 Version:   3.0.101
 Commit:    bc5f8df0f5

Runtime Environment:
 OS Name:     debian
 OS Version:  10
 OS Platform: Linux
 RID:         debian.10-x64
 Base Path:   /usr/share/dotnet/sdk/3.0.101/

Host (useful for support):
  Version: 3.0.1
  Commit:  32085cbc72

.NET Core SDKs installed:
  3.0.101 [/usr/share/dotnet/sdk]

.NET Core runtimes installed:
  Microsoft.AspNetCore.App 3.0.1 [/usr/share/dotnet/shared/Microsoft.AspNetCore.App]
  Microsoft.NETCore.App 3.0.1 [/usr/share/dotnet/shared/Microsoft.NETCore.App]

To install additional .NET Core runtimes or SDKs:
  https://aka.ms/dotnet-download

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions