VirtualBox

Opened 2 years ago

Last modified 11 days ago

#20903 new enhancement

[feature request][Windows] embedding a manifest into the exe/dll

Reported by: Elad Karako Owned by:
Component: other Version: VirtualBox 6.1.32
Keywords: manifest, windows, DPI, GUI, eladkarako, feature request Cc:
Guest type: all Host type: Windows

Description

Windows Host: none of the binaries (exe/dll) include any manifest.

I've done some testing, with a generic manifest I've suited for all of the files, with 'compatibility' for running the app outside of Windows 10 vista virtualization, 'DPI awareness' and the text rendering was amazingly crispy, and 'segmented heap' which seems to improve the program stack handling. I even through in 'long-path awareness' just because I've could.

normally I would patched the embedded (resource-24), but it seems that Windows Defender don't like me to do that on signed programs,

so I've just placed a copy of a '.manifest' for each of the files in c:\Program Files\Oracle\VirtualBox (for example 'VirtualBox.exe.manifest') using https://github.com/eladkarako/manifest/blob/master/example_manifests/generic.manifest

and it seems to do the job.

I did had to apply this registry patch to make it work,

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\SideBySide]
"PreferExternalManifest"=dword:00000001

still, runs fine.

I'm still testing the overall performances, but I can say the GUI is super clear and sharp, I'm using a 150% DPI on my screen, which always seems to show things a bit blurry. and that fixed it completely, the controls seems to keep their place correctly (sometimes DPI awareness makes controls leak their position).

using the new Windows 10 segmented heap seems to help with memory allocation somewhat, but I'm still stress testing.

as for long-path awareness, I do have a registry patch to opt-in the feature as explained in:

https://docs.microsoft.com/en-us/windows/win32/fileio/maximum-file-path-limitation?tabs=cmd#enable-long-paths-in-windows-10-version-1607-and-later

but I don't have any machines on an especially long paths.

however, I know it might help with machines placed on quirky remote locations as well.

I strongly suggest applying this nice and easy (no actual code modification is required) fix, the results are amazing (at least as for memory consumption with the segmented heap and GUI crispiness).

Change History (1)

comment:1 by Klaus Espenlaub, 22 months ago

Never noticed the need to have such a manifest... on my laptop I'm using 125%, and never noticed blurry text and the like in VirtualBox. So what are the problems you're seeing?

I did notice blurry text for many years in the installer, until I found time to fix it (using an embedded manifest), but that's a totally different thing since the installer stub is meant to run on pretty much any Windows version.

Note: See TracTickets for help on using tickets.

© 2023 Oracle
ContactPrivacy policyTerms of Use