Home / 4K / Fixing Windows Software Scaling on High DPI Displays

Fixing Windows Software Scaling on High DPI Displays

I got a new laptop with Windows 10 and it has an amazing display on it. The new screen is 15.6″ with 3840×2160 pixels. Otherwise known as a 4K screen. To be exact it is the Dell XPS 15. All those glorious pixels come with a downside. Not all software knows how to scale itself.

If I had a 40″ screen, no scaling would be necessary. But all those pixels in a smaller screen is unreadable. Windows does have functionality to scale all software by a set amount as you can see in the dialog box below. This dialog is from Windows 10, but similar settings are found in Windows 7 and 8/8.1.

windows-display-settings-600

My laptop defaulted to 250% and I changed the slider to 200% as this was a better answer for my needs. You can set the slider to whatever percentage works best for you.

Some software uses this setting to automatically modify its interface and some doesn’t. Most of my loyal readers know that I’m a very heavy CorelDRAW user. So in the CorelDRAW World, CorelDRAW X7 does modify its interface and earlier versions do not. I found the solution to this problem in a blog post from Dan Antonielli who was trying to get Adobe CS6 programs to display correctly. Yes, the Adobe CS6 issues are also a problem for me, but I rarely use those programs so they aren’t as big of a deal to me as getting CorelDRAW X6 working.

Without the fix, this is how CorelDRAW X6 looks on my screen. Note that I’ve resampled the screen to fit the confines of the blog post. But I think you’ll get the idea that menus and icons are so small that it is nearly impossible to use.

coreldraw-x6-before-600

Just so you can see that it would look great if the screen was much larger, below is the same screenshot cropped to the size of the resampled version above.

coreldraw-x6-before-cropped

In order to fix the problem, it requires editing the registry. Making a mistake when editing the registry could lead to your system not working. So if you aren’t comfortable doing it, don’t do it! And if you decide to go forward, make sure to back up the registry before editing. With that warning out of the way, the change required is fairly minor and not very difficult.

First, you need to get the RegEdit utility running. On your keyboard, choose the Windows key + R. In the Run dialog box that appears, type “regedit” and click OK.

Once you are in the registry, you’ll have to scroll down to find the appropriate section:

HKEY_LOCAL_MACHINE | SOFTWARE | Microsoft | Windows | CurrentVersion | SideBySide

Click on that section and you’ll see various settings on the right side of the Window. Unless you’ve already done this, you won’t see “PreferExternalManifest”. So right-click in the right side of the Windows and select New | Dword (32 bit) Value as shown in the menu below.

new-dword-cropped

Type the name “PreferExternalManifest” and press Enter. Once it is in the list, right-click on it and select Modify. This will give you the dialog box below.

edit-dword

In this dialog, enter a Value of 1 and select Decimal and then click OK. When done, your registry should look like the sample shown below.

regedit-preferexternal-manifest-600

OK, we’re done with the registry so you can exit the Registry Editor. We’ve basically told Windows that any software should look for a “manifest file” when it is run. If you have any software that doesn’t scale correctly, you’ll need to provide that manifest file. It is not needed if the software already scales correctly. Like I said earlier, CorelDRAW X7 does scale correctly. Microsoft Office 2013 (and I assume 2016) also scales correctly for me.

Thankfully, the Dan Antonielli post also provided the necessary file as manifest.txt and this file simply needs to renamed to the same as the EXE of the software that doesn’t scale correctly. So the EXE for CorelDRAW X6 is CorelDRW.exe and you’ll need to rename the text file to CorelDRW.exe.manifest. I’ve actually done that for you. Download a ZIP file containing the raw text file (so you can see what it contains) as well as manifest files for CorelDRAW and Corel PHOTO-PAINT. Just place the manifest files in the exact same folder as the EXE files.

If you have other software that needs to be fixed, rename the text file to match the EXE of that software with a “.manifest” at the end of the name. The next time you run the software, it should scale properly based on your Windows display settings and no reboot should be required.

After I placed the manifest file, here is a resampled shot of my CorelDRAW X6 screen.

coreldraw-x6-after-600

And to show you that it may not look as good on a larger screen, below is a cropped version of this same screen shot without being resampled.

coreldraw-x6-after-cropped

I’ve already added manifest files for some software and it has worked on every program I’ve tried. There are more to add and I will be doing that over the next few days. I’m so glad I found this fix and I hope it helps others of you get the most out of your high DPI screens.

About Foster D. Coburn III

Foster D. Coburn III
Foster D. Coburn III is the author of thirteen books on CorelDRAW, the latest being CorelDRAW X6 Unleashed. He has been a contributor to numerous magazines. Foster has taken many projects, including this Web site and many more, from the early design stage through to a finished piece. He has been a featured speaker at many graphics and Web conferences.

Check Also

God Mode Provides Access to Features in Windows 7, 8 and 10

Trying to figure out where to find settings to change in Windows can often be …

24 comments

  1. Excellent article about screen scaling. Great for anyone with a new laptop or computer that has a high resolution. Perfect for my New Lenovo Yoga Computer, and also excellent for the Dell XPS 13 or 15 Laptops. Icons and screen elements too small or too large, you need to read this article!

  2. Foster, this does work but it disabled my control panel and explorer.exe it would give me the message “there was a problem sending the command to the program” I removed the new D word from the registry and everything was back to normal. I guess I will have to live with the small toolboxes.

    • Foster D. Coburn III
      Foster D. Coburn III

      Bruce, I’ve only performed this one my machine and it worked great. I have heard from others that it also worked for them. The registry is very, very, very picky that everything is done perfectly. So there may be the possibility that something wasn’t quite right and that’s what caused the problem. If you are not someone who has done registry editing in the past, you may want to find a geeky friend to do it for you. At least it is worth another try to see if it will work. If not, you can always undo it again.

  3. I tried this fix for the AOL desktop (AOL Desktop 9.8.2), and it didn’t work. AOL wouldn’t even load. When i removed the manifest (aol.exe.manifest) file from the directory, AOL loaded fine in it’s microscopic font> Any ideas? Please don’t even ask why I am still using AOL — long story …

    Thanks, Judy

  4. Bummer. This is the latest version for Windows 10 (which I am running), but you are probably right that they didn’t do anything to accommodate the software scaling.

  5. Is there some way of modifying the manifest file to get AOL to scale properly?

  6. I think I have seen here a few months ago an article on this site that dealt with a high-dpi screen and CorelDRAW x7 having very small squares when objects are selected (can’t remember the name of them right now…the things you use to resize the object).
    I thought to remember that there was a solution to make them bigger in there, but of course now that I would need it I can’t find the article any more.
    Any idea where it is?

  7. Great tutorial. Worked perfectly for me on my new Lenovo Y700. The control panel for my Wacom tablet was messed up. It took a while to find the right .exe file but it fixed it. Thanks very much.

  8. It worked perfectly till last week. But recently I made an update of Windows 10 and this method doesn’t work anymore! Is there any other thing I can do?

  9. Foster, I did exactly what you said, but it somehow does not change to `Decimal`…
    I mean I can change it after I click modify, but when I close the window and reopen it, it still appears as `Hexadecimal`. Any idea why it acts like that ? Another question is about that Key options. My computer is a 64x based system, am I still supposed to create `Dword (32 bit) Value` key ? or should it be `Qword (64 bit) Value` key ? Thanks for help

  10. Thanks for the instructions. I tried as instructed, Dell Inspiron 15 7000, but I get the “Program cannot start because mfc90u.dll is missing…” system error. Please let me know if you have any recommendation to overcome this…Cheers.

  11. To create working external manifest file for any program, you need to first extract its own manifest and then modify the dpiAware value to false. To extract manifest you can use Resource Hacker program: http://download.cnet.com/Resource-Hacker/3000-2352_4-10178587.html Just run it then drag and drop the needed executable onto it. In the list of resources locate “24” expand it all the way until you see xml text in the preview window. Copy the whole text. Create new text file in notepad and paste this text. Look for <ms_windowsSettings:dpiAware tag then change "true" value to "false". Save this file as XXXX.exe.manifest. Verify that notepad didn't change extension to txt. Now you can place this manifest file beside the executable and run it.

  12. Thanks Damir, I followed your instructions for Corel Draw X5. Here is the xml text copied from Resource Hacker. As you can see, there is no <ms_windowsSettings:dpiAware tag. Any idea what I should do next?

    • Peter,

      If this doesn’t exist it should by default be OFF. I’m not sure if adding the tag will help but try this anyway: In the xml right at the very end but before final closing tag , copy and paste the following:
      false

      Hope this helps

      • Let’s try again. Replace all “{” with “, copy and paste the following:

        {application xmlns=”urn:schemas-microsoft-com:asm.v3″>{windowsSettings>{ms_windowsSettings:dpiAware xmlns:ms_windowsSettings=”http://schemas.microsoft.com/SMI/2005/WindowsSettings” xmlns=”http://schemas.microsoft.com/SMI/2005/WindowsSettings”>false{/ms_windowsSettings:dpiAware>{/windowsSettings>{/application>

        • Maybe 3rd time is a charm…
          1. Meant to say before last closing tag ‘assembly’
          2. Replace { with xml opening tag
          3. Replace all formatted quotation marks with double quotation marks

Leave a Reply

Subscribe To Our Graphics Unleashed Blog Posts

Join our mailing list to receive the latest blog posts from Graphics Unleashed

You have Successfully Subscribed!

Pin It on Pinterest

Shares
Share This