6 ms·
can you elaborate?
by hard_times 1y ago
can you elaborate?
- torstenvl 1y agoIn my experience, the wxWidgets documentation and forums are pretty good resources for Windows manifest files. YMMV. An example from one of my projects: https://pastebin.com/Jvjn5C6S https://pastebin.com/Jvjn5C6S You need to reference it from your resource source like so: https://pastebin.com/8FUi4tMz https://pastebin.com/8FUi4tMz And then compile that into an object file with windres: x86_64-w64-mingw32-windres rsrc/metadata/windows.rc -o winbuild/windowsrc.o And link it with your project like you would any other object file.
- trinix912 1y agoThe entire structure is also documented on MSDN with all possible values - https://learn.microsoft.com/en-us/windows/win32/sbscs/application-manifests https://learn.microsoft.com/en-us/windows/win32/sbscs/applic.... While MSDN is a bit impractical to browse (there's simply so much stuff in there) it's usually the best place to go to for documentation when doing Windows dev.
- torstenvl 1y agoStrongly disagree. There's way too much mystery and magic number usage in the official documentation.
- crimsontech 1y agoCan you recommend any good alternatives for someone looking to learn programming using windows APIs?
- formerly_proven 1y agoThe magic numbers (hashes and UUIDs) sort of make sense because there's a slightly adversarial interaction between developers and Microsoft. If you just had a compatibleWindowsMin and compatibleWindowsMax field with version numbers, people would just go ahead and put "9999" in the max field, and then OS upgrades break applications again. By using UUIDs instead, an application developer can't intentionally or unintentionally declare compatibility with unreleased Windows versions.
- fredoralive 1y agoAs well as information about side by side assemblies (ie: library versions), a Windows manifest file has various settings and a declaration of compatible versions of Windows that affect Windows' handling of the app, such as whether it can handle paths over MAX_PATH, if it is hi-dpi aware, or if it knows about themed controls. https://learn.microsoft.com/en-us/windows/win32/sbscs/application-manifests https://learn.microsoft.com/en-us/windows/win32/sbscs/applic... If an EXE doesn't have a manifest file, Windows assumes that it's ancient, so it falls back to conservative defaults like ye olde USER controls to try and avoid breaking it.