QueryInterface(pD3D10Device, __uuidof(IDXGIDevice), (void**)(&pDXGIDevice));
pDXGIDevice->GetAdapter(&pDXGIAdapter);
pDXGIAdapter->GetDesc(&adapterDesc);
pDXGIAdapter->CheckInterfaceSupport(__uuidof(ID3D10Device), &UserModeDriverVersion);
Device description is in
adapterDesc.Description, but it's not guaranteed to be stable between
systems. The other components
of the adapter descriptor like VendorId, DeviceId, and SubSysId are more reliable for identifying a piece of hardare. Check the D3D docs for more info about those functions and the meaning of their arguments.