Developing Games on Intel Graphics
If you are gaming on graphics integrated in your Intel Processor, this is the place for you! Find answers to your questions or post your issues with PC games

Setting "Intel HD Graphics Control Panel" parameters without using the GUI

Andreas_W_1
Beginner
15,214 Views

Setting "Intel HD Graphics Control Panel" parameters without using the GUI

We are deploying a preconfigured Windows image to a large number of dual screen terminals with preinstalled Intel HD Graphics drivers (v 10.18.10.3496).

The terminals use a user defined screen resolution of 960x600 pixels with full screen scaling option on a couple of different monitor types. All used hardware is capable of displaying this screen resolution. Because of the different monitor IDs it seems impossible to preconfigure these settings in the disk image.

Is it possible to automatically set the user defined screen resolution of 960x600 and the full screen scaling option on first boot (command line tool, some script or a registry hack) for both monitors?


Thanks,
Andreas

0 Kudos
15 Replies
Michael_C_Intel2
Employee
15,214 Views

Hi Andreas,

Yes there may be a way that will work for you. The following article was published in 20112 by an Intel Engineer. The HD graphics he references or old and not supported, but the process should still apply today:

https://software.intel.com/en-us/articles/intel-graphics-developers-guides

I believe this will help you get around the issue.

-Michael

0 Kudos
Andreas_W_1
Beginner
15,214 Views

Hi Michael,

Thanks for your link. But I didn’t find a solution there.

What I found so far:
1) Custom resolution settings are stored in registry values named "C_MODES_DFP_XX" in the registry key "HKLM\SYSTEM\CurrentControlSet\Control\Class\{4d36e968-e325-11ce-bfc1-08002be10318}\0000". The XX in  "C_MODES_DFP_XX" is one byte in hexadecimal (00 to FF). This byte must be some monitor index - I don't know how to calculate this index. So my idea was to write the same custom resolution setting to all 255 possible indices. Byte number 9 in this binary setting has to be the same value as the  "C_MODES_DFP_XX" XX index.
This "hack" seems to work with at least 3 different monitor models I have tested so far.

2) Screen scaling settings:
I think this setting is stored in a binary registry value named “AS_XXXXXXXXXXXXXXXXXXXX_AS” in the same registry key "HKLM\SYSTEM\CurrentControlSet\Control\Class\{4d36e968-e325-11ce-bfc1-08002be10318}\0000". The XXXXXXXXXXXXXXXXXXXX in  “AS_XXXXXXXXXXXXXXXXXXXX_AS” must be some monitor model identification and there is a different binary record for each unique monitor from the same monitor model in this registry entry.
I haven’t figured out how to modify this data structure yet, to set the display scaling mode…

Is there really no command line tool, script or windows group policy setting to configure those graphic driver settings?

Thanks,
​Andreas

 

 

 

0 Kudos
Michael_C_Intel2
Employee
15,214 Views

Hi Andreas,

I am still checking on that, I believe there is but need to get the details.

-Michael

0 Kudos
Tommy_J_
Beginner
15,214 Views

I'm currently working on an issue where I need to programmatically set a specific display scaling property. Has there been any progress on this?

Thanks,

Tommy

0 Kudos
Owen_M_
Beginner
15,214 Views

Our organization is also looking for a way to programmatically set display scaling.  An update on this topic would be greatly appreciated.

Thanks,

Owen

0 Kudos
RCarc
Beginner
15,214 Views

Same thing here. We need to automatically deploy the settings. If there are Registry-Key Settings or Exported Profile-Files we could deploy to a huge number of Windows 10 Computers, we would be happy.

[edit] Using a file/folder monitoring tool for write-operations I found out, that profiles you define, are stored in c:\users\yourUser\IntelGraphicsProfiles\

But I have no clue which one is loaded as default, if any. As of exporting the profiles you can do this via the export-function in the Intel HD Graphics Control Panel. So for the moment being I can copy exported and even saved Graphics-Profiles to a server and back to the client via login-script. But I still need a hint on how to load or import one of these profiles automatically.

[edit as of Sept. 19th] Something seems to have changed: I am no longer able to see/select the copied graphics profiles, which means I have to reinvestigate the whole thing.

Thanks a lot, Rosario

0 Kudos
william_s_5
Beginner
15,214 Views

My organization is also interested in a Script / CLI interface to manipulate the resolution as well as the display scaling.  Especially on analog video interfaces.

0 Kudos
william_s_5
Beginner
15,214 Views

Coppock, Michael J

Did you have any luck finding details on the scripted interface?  If we're Out lf Luck I'd appreciate a response to close this thread out.  I'm certain I'm not the only one who'd like that judging by the dates on some of these posts.

Cheers,

William

0 Kudos
Michael_C_Intel2
Employee
15,214 Views

Hi William,

At this time we are out of luck, I am still checking to see if there is solution however.  

-Michael

0 Kudos
Juhana_N_
Beginner
15,214 Views

[Deleted] Accidental duplicate

0 Kudos
Juhana_N_
Beginner
15,214 Views

Coppock, Michael J (Intel) wrote:

At this time we are out of luck, I am still checking to see if there is solution however.  

Hi Michael,

Did You find anythin that could help in this situation?

We have a deployment in the field where it is not feasible to change settings from the device itself (risk to operations, no it support persons near, user error etc). One application is causing major complaints, and we have solved that complaint with a custom resolution (720x400).

It would be extremely helpful to have scripting/tool/command line method to create custom resolutions. We could push that over our MDM and get everyone sorted without delay.

Just a note: This deployment uses Intel(R) HD Graphics 520 - 20.19.15.4380

ps. Tried x-amount of registry tricks to try to capture the creation of custom resolution, but to no avail...

-Juhana

0 Kudos
freakbyte
Beginner
13,152 Views

Create and export a graphics profile (.igp) with your desired settings, then import and apply it like this on your target machines: 

C:\Windows\System32\GfxUIEx.exe -import C:\profilename.igp -profile profilename
0 Kudos
searcher
Beginner
10,408 Views

Looks good at first sight. However, the export format from the UI seems to be different from the import format of the commandline. So I can export and import within the UI but an import from the command line fails. The error log shows an invalid file format error.

0 Kudos
searcher
Beginner
10,359 Views

In my case (changing the Scaling settings) the following site helped:
http://supportishere.com/script-to-force-intel-graphics-card-to-maintain-aspect-ratio-when-switching-display-resolutions/

I needed it the other way: Changing to the full screen scaling which has a value of 3.

  1. Changed the reg-value
  2. Restart
  3. Changed the resolution
0 Kudos
Reply