Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
Contains the DNS query parameters used in a call to DnsQueryEx.
Syntax
typedef struct _DNS_QUERY_REQUEST3 {
ULONG Version;
PCWSTR QueryName;
WORD QueryType;
ULONG64 QueryOptions;
PDNS_ADDR_ARRAY pDnsServerList;
ULONG InterfaceIndex;
PDNS_QUERY_COMPLETION_ROUTINE pQueryCompletionCallback;
PVOID pQueryContext;
BOOL IsNetworkQueryRequired;
DWORD RequiredNetworkIndex;
DWORD cCustomServers;
DNS_CUSTOM_SERVER *pCustomServers;
} DNS_QUERY_REQUEST3, *PDNS_QUERY_REQUEST3;
Members
Version
Type: ULONG
The structure version must be the DNS_QUERY_REQUEST_VERSION3; which has a value of 3.
QueryName
Type: PCWSTR
A pointer to a string that represents the DNS name to query.
Note
If QueryName is NULL, then the query is for the local machine name.
QueryType
Type: WORD
A value that represents the Resource Record (RR) DNS Record Type that is queried. QueryType determines the format of data pointed to by pQueryRecords returned in the DNS_QUERY_RESULT structure. For example, if the value of wType is DNS_TYPE_A, then the format of data pointed to by pQueryRecords is DNS_A_DATA.
QueryOptions
Type: ULONG64
A value that contains a bitmap of DNS Query Options to use in the DNS query. Options can be combined, and all options override DNS_QUERY_STANDARD.
pDnsServerList
Type: PDNS_ADDR_ARRAY
A pointer to a DNS_ADDR_ARRAY structure that contains a list of DNS servers to use in the query.
InterfaceIndex
Type: ULONG
A value that contains the interface index over which the query is sent. If InterfaceIndex is 0, then all interfaces will be considered.
pQueryCompletionCallback
Type: PDNS_QUERY_COMPLETION_ROUTINE
A pointer to a DNS_QUERY_COMPLETION_ROUTINE callback that is used to return the results of an asynchronous query from a call to DnsQueryEx.
Note
If NULL, then DnsQueryEx is called synchronously.
pQueryContext
Type: PVOID
A pointer to a user context.
IsNetworkQueryRequired
Type: BOOL
Reserved.
RequiredNetworkIndex
Type: DWORD
Reserved.
cCustomServers
Type: DWORD
The number of custom servers pointed to by the pCustomServers member.
pCustomServers
Type: _Field_size_(cCustomServers) DNS_CUSTOM_SERVER*
A pointer to an array of N (where N is given in the cCustomServers field) DNS_CUSTOM_SERVER objects.
If cCustomServers is 0, then pCustomServers must be NULL.
Note
At least one of pCustomServers and pDnsServerList must be NULL. Both set to non-NULL values at the same time is not supported.
Remarks
The custom servers specified in pCustomServers bypass the system-configured DNS servers.
If the query name matches a rule in the Name Resolution Policy Table (NRPT), then the custom servers are ignored, and only the servers from the NRPT rule are used.
Requirements
Requirement | Value |
---|---|
Minimum supported client | Windows Build 22000 |
Minimum supported server | Windows Build 22000 |
Header | windns.h |