Skip to content

.net core .exes are not detected as squirrel apps even with SquirrelAwareVersion #1644

@mungojam

Description

@mungojam

Squirrel version(s)
1.9.1

Description
I am deploying a .net core 3 console application with squirrel, which mostly works. But the tool is not detected as a squirrel aware app so never gets called with --squirrel-install when being installed. This is despite the fact that I have added the required SquirrelAwareVersion version info to the file.

I can tell why it is happening and it is due to the fact that Squirrel is looking for the resource under US-English, language, but .net core and then rcedit adds what looks like a universal language resource instead. See below for my generated resource.

I sort of understand the reason for not searching all languages, but could this universal language be added as an additional search for the squirrel-aware setting?

Steps to recreate

  1. md dotnet-test
  2. cd dotnet-test
  3. dotnet new console
  4. dotnet build -r win-x64
  5. get rcedit-x64 from https://github.com/electron/rcedit/releases/tag/v1.1.1
  6. rcedit-x64.exe bin\Debug\netcoreapp3.1\win-x64\dotnet-test.exe --set-version-string "SquirrelAwareVersion" "1"

Expected behavior
If we manage to add the SquirrelAwareVersion to a .net core exe, then it should be detected by squirrel as a squirrel aware application

Actual behavior
The tool is not detected as a squirrel aware application

Additional information

Using Resource Hacker I can see that the block that has been created has a different language code (000004b0) than what squirrel is looking for. I guess this is a universal one when Squirrel is looking for US-English.

	BLOCK "000004b0"
	{
		VALUE "CompanyName", "dotnet-test"
		..other standard stuff
		VALUE "Assembly Version", "1.0.0.0"
		VALUE "SquirrelAwareVersion", "1"
	}

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions