microsoft / microsoft/WindowsAppSDK
API request: port System.Diagnostics.FileVersionInfo to WinRT
- Dominant language
- C++
- Stars
- 4.7k
- Forks
- 471
- Avg merge
- 3d 13h
- Merged PRs (30d)
- 28
Description
Related to #1083.
To retrieve version info of an executable or DLL, you need to use Win32 API functions defined in WinVer.h. These aren't particularly convenient to use directly, so .NET has provided [System.Diagnostics.FileVersion](https://learn.microsoft.com/en-us/dotnet/api/system.diagnostics.fileversioninfo?view=net-6.0). It's fine for the most part but has some drawbacks: marshals all strings, which is wasteful if you only need to access a few properties. It also doesn't give you access to localised strings that are not in the language it determines as preferred (shouldn't be needed in most cases but still useful to have access to).
Consider making a WinRT wrapper that's also accessible to C++ and other languages.
Contributor guide
No contributing guide indexed for this repository
Research direction
Start by reviewing related issue #1083 and the System.Diagnostics.FileVersionInfo API described here, alongside the WinVer.h functions. Define the scope of a WinRT wrapper for executable and DLL version information, including access to localized strings and use from C++ and other languages; completion would require an agreed API design and implementation.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- cpp, csharp
- Domain
- api, desktop
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100