@@ -43,7 +43,7 @@ typedef int32_t NTSTATUS; // 0 for success, -1 for failure
4343#endif
4444
4545#define D3DKMT_ALIGN64 __attribute__((aligned(8)))
46- #define MAX_ENUM_ADAPTERS 16
46+ #define _In_range_ ( a , b )
4747
4848typedef struct D3DKMT_HANDLE {
4949 union {
@@ -68,6 +68,13 @@ typedef struct _D3DKMT_ADAPTERINFO {
6868 BOOL bPrecisePresentRegionsPreferred ;
6969} D3DKMT_ADAPTERINFO ;
7070
71+ #define MAX_ENUM_ADAPTERS 16
72+ typedef struct _D3DKMT_ENUMADAPTERS
73+ {
74+ _In_range_ (0 , MAX_ENUM_ADAPTERS ) ULONG NumAdapters ;
75+ D3DKMT_ADAPTERINFO Adapters [MAX_ENUM_ADAPTERS ];
76+ } D3DKMT_ENUMADAPTERS ;
77+
7178typedef struct _D3DKMT_ENUMADAPTERS2 {
7279 ULONG NumAdapters ; // in/out: On input, the count of the pAdapters array buffer. On output, the number of adapters enumerated.
7380 D3DKMT_ADAPTERINFO * pAdapters ; // out: Array of enumerated adapters containing NumAdapters elements
@@ -319,7 +326,8 @@ static_assert(sizeof(D3DKMT_NODEMETADATA) == 0x4E, "D3DKMT_NODEMETADATA structur
319326EXTERN_C _Check_return_ NTSTATUS APIENTRY D3DKMTOpenAdapterFromLuid (_Inout_ CONST D3DKMT_OPENADAPTERFROMLUID * );
320327EXTERN_C _Check_return_ NTSTATUS APIENTRY D3DKMTQueryAdapterInfo (_Inout_ CONST D3DKMT_QUERYADAPTERINFO * );
321328EXTERN_C _Check_return_ NTSTATUS APIENTRY D3DKMTCloseAdapter (_In_ CONST D3DKMT_CLOSEADAPTER * );
322- EXTERN_C _Check_return_ NTSTATUS APIENTRY D3DKMTEnumAdapters2 (_Inout_ D3DKMT_ENUMADAPTERS2 * );
329+ EXTERN_C _Check_return_ NTSTATUS APIENTRY D3DKMTEnumAdapters (_Inout_ CONST D3DKMT_ENUMADAPTERS * );
330+ EXTERN_C _Check_return_ NTSTATUS APIENTRY D3DKMTEnumAdapters2 (_Inout_ CONST D3DKMT_ENUMADAPTERS2 * );
323331EXTERN_C _Check_return_ NTSTATUS APIENTRY D3DKMTQueryStatistics (_In_ CONST D3DKMT_QUERYSTATISTICS * );
324332
325333#else
0 commit comments