DnsQueryEx, fonction (windns.h)
La fonction DnsQueryEx est l’interface de requête générique asynchrone de l’espace de noms DNS. Il fournit aux développeurs d’applications une interface de résolution de requêtes DNS.
Comme dnsQuery, DnsQueryEx peut également être utilisé pour effectuer des requêtes synchrones dans l’espace de noms DNS.
Syntaxe
DNS_STATUS DnsQueryEx(
[in] PDNS_QUERY_REQUEST pQueryRequest,
[in, out] PDNS_QUERY_RESULT pQueryResults,
[in, out, optional] PDNS_QUERY_CANCEL pCancelHandle
);
Paramètres
[in] pQueryRequest
Pointeur vers une structure DNS_QUERY_REQUEST ou DNS_QUERY_REQUEST3 qui contient les informations de demande de requête.
[in, out] pQueryResults
Pointeur vers une structure DNS_QUERY_RESULT qui contient les résultats de la requête. Lors de l’entrée, la version membre de pQueryResults doit être DNS_QUERY_RESULTS_VERSION1 et tous les autres membres doivent être NULL. En sortie, les membres restants sont remplis dans le cadre de la requête terminée.
[in, out, optional] pCancelHandle
Pointeur vers une structure DNS_QUERY_CANCEL qui peut être utilisée pour annuler une requête asynchrone en attente.
Valeur de retour
La fonction DnsQueryEx a les valeurs de retour possibles suivantes :
Retourner le code | Description |
---|---|
|
L’appel a réussi. |
|
Les paramètres pQueryRequest ou pQueryResults sont non initialisés ou contiennent la version incorrecte. |
|
L’appel a entraîné une erreur RCODE. |
|
Aucun enregistrement dans la réponse. |
|
La requête est terminée de façon asynchrone. |
Remarques
Si un appel à DnsQueryEx se termine de manière synchrone (c’est-à-dire que la valeur de retour de la fonction n’est pas DNS_REQUEST_PENDING), le pQueryRecords membre de pQueryResults contient un pointeur vers une liste de DNS_RECORDS et DnsQueryEx retourne une erreur ou une réussite.
Les conditions suivantes appellent un appel synchrone pour dnsQueryEx et n’utilisent pas le rappel DNS :
- Le rappel
DNS_QUERY_COMPLETION_ROUTINE est omis à partir du membrepQueryCompleteCallback de pQueryRequest . - Une requête concerne le nom de l’ordinateur local et A ou AAAA type Resource Records (RR).
- Un appel à DnsQueryEx interroge une adresse IPv4 ou IPv6.
- Un appel à DnsQueryEx retourne une erreur.
pCancelHandle retourné par un appel asynchrone à DnsQueryEx et pQueryContext est valide jusqu’à ce que le rappel DNS DNS_QUERY_COMPLETION_ROUTINE soit appelé.
Exigences
Exigence | Valeur |
---|---|
client minimum pris en charge | Windows 8 [applications de bureau uniquement] |
serveur minimum pris en charge | Windows Server 2012 [applications de bureau uniquement] |
plateforme cible | Windows |
d’en-tête | windns.h |
bibliothèque | Dnsapi.lib |
DLL | Dnsapi.dll |
Voir aussi
- DNS_QUERY_COMPLETION_ROUTINE
- DnsCancelQuery
- DnsQuery