WINGET can't determine installed version

All bug reports here please
Mikerowave
Posts: 2
Joined: Mon Dec 30, 2024 9:54 am

WINGET can't determine installed version

#1

Unread post by Mikerowave »

Using Windows 10/11, the WINGET utility identifies the SDR Console (V3) version as "Unknown".

Code: Select all

>winget list "SDR-Radio.com (V3)"
Name               Id                   Version Available Source
----------------------------------------------------------------
SDR-Radio.com (V3) SimonG4ELI.SDR-Radio Unknown 3.3       winget
It knows 3.3 is available, but but can't determine the current version. If you force the upgrade using the --include-unknown flag, it will install 3.3 again.

I understand it's a simple registry entry, but not being a developer, I'm not sure where that would be.

User avatar
KA1GJU
Posts: 366
Joined: Tue Aug 11, 2020 2:16 pm

Re: WINGET can't determine installed version

#2

Unread post by KA1GJU »

Why go through all the trouble when SDRC tells you on the screen what version you are currently running?
It's centered just above the ribbon bar, see attachment.


73 Kriss KA1GJU
Attachments
SDRC Ver number
SDRC Ver number
Screenshot-2024-12-14-202646.jpeg (247.01 KiB) Viewed 10930 times
73 Kriss KA1GJU Home of the KA1GJU Super Station SDRC Servers in NH, USA (FN42mw, FN43na, and FN42lt)

User avatar
mbott
Posts: 127
Joined: Sat Aug 08, 2020 10:48 am
Location: Westerville, Ohio EN80nd
Contact:

Re: WINGET can't determine installed version

#3

Unread post by mbott »

Well, this post is educational. My preferred O/S is Linux and I didn't even know Windows had this "winget" utility. Since the system I'm running Win11 on is pretty much for SDR usage, I think I can better control it the old fashioned way. :)
--
Mike

Mikerowave
Posts: 2
Joined: Mon Dec 30, 2024 9:54 am

Re: WINGET can't determine installed version

#4

Unread post by Mikerowave »

I know the version number, WINGET doesn't. When executing a command, such as, winget upgrade --all (similar to sudo apt update && sudo apt upgrade in Linux), it excludes SDR Console (V3) because it can't find the current version.

WINGET is a simple way to keep the majority of Windows apps updated.

ManfredSch
Posts: 2
Joined: Tue Mar 18, 2025 12:39 am

Re: WINGET can't determine installed version

#5

Unread post by ManfredSch »

I had the same problem.

Code: Select all

>winget update --include-unknown
Name               Id                   Version Available Source
----------------------------------------------------------------
SDR-Radio.com (V3) SimonG4ELI.SDR-Radio Unknown 3.3       winget
After adding the following registry value ...

Code: Select all

[HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Microsoft\Windows\CurrentVersion\Uninstall\SDR-Radio.com (V3)]
"DisplayVersion"="3.3"
... winget now reports version 3.3 and does no longer complain about a package with an unknown version.

Code: Select all

> winget list "SDR-Radio.com (V3)"
Name               Id                   Version Source
-------------------------------------------------------
SDR-Radio.com (V3) SimonG4ELI.SDR-Radio 3.3     winget
It would be great to see this minor problem fixed in future SDR-Radio releases.

jdow
Posts: 1025
Joined: Mon Aug 10, 2020 8:17 pm

Re: WINGET can't determine installed version

#6

Unread post by jdow »

Simon does not put the version into the resource portion of the executable file. He never has. It's an annoying hassle.
{^_^}

ManfredSch
Posts: 2
Joined: Tue Mar 18, 2025 12:39 am

Re: WINGET can't determine installed version

#7

Unread post by ManfredSch »

Both executables "SDR-Radio V3.3, 64-bit, 2024-02-05_0741.exe" and "SDR Console.exe" do have product version information.

Code: Select all

PS > (Get-Command "C:\Downloads\SDR-Radio V3.3, 64-bit, 2024-02-05_0741.exe").FileVersionInfo.ProductVersion
3.0 (64-bit)
PS > (Get-Command "C:\Program Files\SDR-Radio.com (V3)\SDR Console.exe").FileVersionInfo.ProductVersion
3.3
However it looks like winget does not query the executables. Therefore I think the installer has to put a "DisplayVersion" value into the registry.

To monitor winget activities you could use Process Monitor (https://learn.microsoft.com/en-us/sysin ... ds/procmon) and add "Process Name is winget.exe then Include" to the "Process Monitor Filter".

Code: Select all

Relevant Process Monitor output after adding "DisplayVersion" value:
winget.exe RegQueryValue HKLM\SOFTWARE\WOW6432Node\Microsoft\Windows\CurrentVersion\Uninstall\SDR-Radio.com (V3)\DisplayVersion SUCCESS Type: REG_SZ, Length: 8, Data: 3.3
The problem has also been discussed at https://github.com/microsoft/winget-cli/issues/1255.

jdow
Posts: 1025
Joined: Mon Aug 10, 2020 8:17 pm

Re: WINGET can't determine installed version

#8

Unread post by jdow »

The "standard" place the version info lives is the resource extension to the file. You can see it in a resource editor such as VisualStudio's tool. That version on SDRConsole is 1.0.0.1, the default new project version number. It is there. It is meaningless. So WinGet ignores it. The version information the executable shows when it runs is encoded in a non-standard location in the file, which makes version tracking easier for the developer but inaccessible outside the file. I don't see Simon making a change to this.

{^_^}

Post Reply