Misaya
Misaya

Reputation: 11

How to set DPI scale to 100% in windows 10 kiosk-mode?

Is it possible some how, to change the DPI scaling setting in kiosk-mode Windows 10 LTSC ?

In the kiosk-mode windows 10,the UWP application is set up to 150%, so UI controls are really large.

Upvotes: 0

Views: 2356

Answers (2)

Brandon B
Brandon B

Reputation: 1

To control the display scale for the a Windows 10 or 11 Kiosk user, you must configure registry keys. It can also be done with group policy, but that is beyond this scope. This requires you to have already created the Kiosk user. This is confirmed to work in Windows 11 (23H2). It cannot be done using the Windows settings->display menu at this time. The steps are:

  1. Open the Windows Registry Editor as an administrator regedit.exe This can be done with by loggining in with any account that has administrator access. Further Documentation

  2. Identify the Kiosk User ID for that machine This will identify the value for {Kiosk Account ID}. The registry Computer\HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList contains a list of users on the machine. Each folder is a user account. Within each folder is a registry entry for "ProfileImagePath". That path contains the account name. Look for one that says something like "C:\Users\Kiosk" or whatever name you gave the kiosk account. The folder name above this key is the {Kiosk Account ID} that you will use in steps 3 & 4. Further Documentation

  3. Enable the custom display scale by creating or modifying this registry entry

- Name: {Kiosk Account ID}\Control Panel\Desktop\Win8DpiScaling
- Type: REG_DWORD
- Data: 0x00000001 (1)
- Value Data: 1
- Base: Hexadecimal

Further Documentation

  1. Set the custom display scale by creating or modifying this registry entry
- Name: {Kiosk Account ID}\Control Panel\Desktop\LogPixels
- Type: REG_DWORD
- Data: 0x00000060 (96)
- Value Data: 60
- Base: Hexadecimal

Further documentation including other values.

  1. Restart the machine and allow it to go into Kiosk mode. You should now see the correct display scale.

Upvotes: 0

Roy Li - MSFT
Roy Li - MSFT

Reputation: 8681

I have to say that in UWP apps, it is not possible to change the scale size of the system. My suggestion is that you might need to scale the controls in your app based on the system scale value to make your app looks better.

You could use the following code to get the current scale size:

    DisplayInformation information = DisplayInformation.GetForCurrentView();

        var factor = information.ResolutionScale;

Then you could apply a transform for the controls in your app to make them look better. For example using the ScaleTransform

Upvotes: 1

Related Questions