public List <KmtAdapter> GetAdapters() { var result = new List <KmtAdapter>(); try { var adapters = new Interop._D3DKMT_ENUMADAPTERS(); if (Interop.Gdi.D3DKMTEnumAdapters(ref adapters) == Interop.NtStatus.STATUS_SUCCESS) { for (int i = 0; i < adapters.NumAdapters; i++) { result.Add(new KmtAdapter(adapters.Adapters[i], _logger)); } } } catch (EntryPointNotFoundException ex) { _logger?.LogWarning($"function not found: {ex.TargetSite.Name}"); } catch (Exception ex) { _logger?.LogError(ex, "unkown error"); } return(result); }
public static extern NtStatus D3DKMTEnumAdapters(ref _D3DKMT_ENUMADAPTERS unnamedParam1);