Many games come with their own D3DCompiter_47 DLL and VCRedist files, but those are actually heavily out-dated Windows files... I know that if D3DCompiter_47 and VCRedist DLL files within game directories are either renamed or deleted, then the game will use files with same filenames from Windows\System32 directory, where newer and OS-native files reside. For example, Witcher 3 ships with D3DCompiler_47 6.3.9600.16384 . If I rename that file, the game will start using my OS native D3DCompilter_47 build - 10.0.14393.1715 . Witcher 3 also ships with Xinput1_3.dll file. I renamed it, then took (newer and OS-native) XInput1_4.dll file from System32 folder, copied it into Witcher3.exe directory, renamed it to XInput1_3.dll and the game still worked without issues. I have not noticed any issues in any games when forcing them to use newer OS-native DLL files, but there could be negative or positive consequences I am not aware of. Does anyone know?