July 11, 2020 · Windows

How To: Specify Application-Specific Direct3D Flags

In some application compatibility scenarios, you may wish to control Direct3D flags (e.g. ForceDriverFlagsOff) on a per-user and per-application basis. To do so, create a registry key for the application at HKEY_CURRENT_USER\SOFTWARE\Microsoft\Direct3D\ (e.g. SolitaireOverrides). Under this new key, create the following values:

  1. Name (string) - Full path to the executing image. (This path must match the result of GetModuleFileName).
  2. Size (dword) - Size of executing image in bytes.
  3. Any additional Direct3D specific values.

Full example:

Windows Registry Editor Version 5.00

[HKEY_CURRENT_USER\SOFTWARE\Microsoft\Direct3D\SolitaireOverrides]
"Name"="C:\\Games\\Solitaire.exe"
"Size"=dword:0141f4e8
"ForceDriverFlagsOff"=dword:1

Bonus: Flags normally specified at HKEY_LOCAL_MACHINE\Software\Microsoft\Direct3D\Drivers and HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\GraphicsDrivers\Scheduler can also be overridden using the above scheme. Simply create the subkeys under HKEY_CURRENT_USER and follow the same steps above.