In DirectX9 I can call IDirect3D9::GetAdapterIdentifier
method to get D3DADAPTER_IDENTIFIER9
with adapter driver version DriverVersion
.
Is there anything similar in DirectX12 for getting a driver version?
You can get each DXGI adapter driver version from the registry,
key HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\DirectX
(with matching DeviceId from DXGI_ADAPTER_DESC)
For example, I get :
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\DirectX{53ED9FF6-8883-11E8-B1FF-C0C7A6E97177}
DeviceId = 0x402
Description = Intel(R) HD Graphics
DriverVersion = 0x140013000f12e3
then :
LARGE_INTEGER nDriverVersion;
nDriverVersion.QuadPart = 0x140013000f12e3;
WORD nProduct = HIWORD(nDriverVersion.HighPart);
WORD nVersion = LOWORD(nDriverVersion.HighPart);
WORD nSubVersion = HIWORD(nDriverVersion.LowPart);
WORD nBuild = LOWORD(nDriverVersion.LowPart);
=> 20.19.15 Build 4835, which is a valid version (Intel HD Graphics Driver 20.19.15.4835 64-bit)