HexEdit
HexEdit copied to clipboard
HexEdit 5 does not take system text scaling into account
HexEdit 5 build 1349, under Windows 8.1 64-bit. I have a laptop with a crazy display resolution of 2560x1440. This seems to be common for new laptop displays and probably for new monitors.. It's clear that such display resolution gives very small GUI items, so the only way to work with it is to set the "size of all items" under the Control Panel -> Display to the value of "Larger - 150%" or "Extra Large - 200%". This makes most of the things, including different windows, icons and texts in these windows to be acceptable in size. But HexEdit 5 seems to use its own drawing technique of its hex editing window (where the file content is viewed and edited) that does not take this system's "size of all items" into account. So this editing window looks very small for me. Can this be fixed by applying the system's scaling to HexEdit's editing window?
Here is how it looks for me: HexEdit screenshot
All you need to do is increase the display font size. There are several ways:
- on std toolbar click the increase font button (10th button with large A on it)
- on the format bar click th4e font size drop down list (6th button) and choose a larger font
- hold down Ctrl key + use mouse wheel (HexEdit has had this for 15 years - even before MSWord!)
The font (including size) is remembered for every file you open but for new files you can change the default. To do this you can use the "Save Current as Default" in Doc/General options page. In detail:
- Open any file in HexEdit
- Open the Options dialog
- Go to Document/General page
- Click "Use default settings"
- Go to Document/Display page
- Click the font button (eg "Normal Font")
- Select a new size from the list or enter a value in the Size box (eg 32)
- Click OK
- Go back to Document/General page
- Click save current as default
Alternately after step 4 5. Click OK to go back to file edit mode 6. Adjust the font size as above (and any other display settings) 7. Open Options dialog 8. Click save current as default 9. Click OK
Note that there were a few display problems for non-std DPI (ie not 100%). However, I have been running my work laptop at 125% for a few months and only noticed one (that I fixed about 2 months ago). But if you notice anything please tell me.
Thank you, it is fixed for me now.
I'm running at 250% (4K monitor) - the about box third party list is ... messy. Windows assumes a program is dpi-aware if it has no manifest. If I force hexedit.exe to be not-aware, then everything draws properly.
By setting the registry entry: [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\SideBySide] "PreferExternalManifest"=dword:00000001
and then creating a "hexedit.exe.manifest": `
HexEdit.exe should have a manifest file - it's embedded in the .EXE as a resource. I have fixed a few DPI problems that I noticed when running at 125% but 250% obviously makes things more noticeable. The 3rd party list in the About box is from a 3rd party (CodeProject project), but I have the source and will look into it.
Thanks for reproting that.
Whoops - you're right - darn semicolons on the mt cmd! So my previous fix for anyone watching is:
- set the registry key
- run
mt -inputresource:HexEdit.exe;#1 -out:HexEdit.exe.manifest
- Edit HexEdit.exe.manifest and change dpiAware to false
- Place this manifest file next to the exe
Alternatively, open the exe as a resource in Visual Studio and directly manipulate the manifest.