GetAddrInfoExW не умеет в таймаут?!
От: Basil2 Россия https://starostin.msk.ru
Дата: 07.11.22 09:17
Оценка:
Использую так:

timeval timeout{ 0, 999 };
::GetAddrInfoExW(name, L"", NS_DNS, pNspId, &hints, &pResult, &timeout, nullptr, nullptr, nullptr);

В ответ получаю 10022 (Invalid argument). Заменяю timeout на nullptr — получаю 0. Как так-то?

Макрос UNICODE выставлен, винда 10-ка. Загуглил проблему — вижу жалобы, но не вижу ответов! Не верится, что заявленный функционал достаточно популярной функции не работает, но... Что делаю не так?
Проект Ребенок8020 — пошаговый гайд как сделать, вырастить и воспитать ребенка.
Re: GetAddrInfoExW не умеет в таймаут?!
От: dmitry_npi Россия  
Дата: 13.11.22 14:47
Оценка:
Здравствуйте, Basil2, Вы писали:

B>Использую так:


B>timeval timeout{ 0, 999 };

B>::GetAddrInfoExW(name, L"", NS_DNS, pNspId, &hints, &pResult, &timeout, nullptr, nullptr, nullptr);

B>В ответ получаю 10022 (Invalid argument). Заменяю timeout на nullptr — получаю 0. Как так-то?


B>Макрос UNICODE выставлен, винда 10-ка. Загуглил проблему — вижу жалобы, но не вижу ответов! Не верится, что заявленный функционал достаточно популярной функции не работает, но... Что делаю не так?


А где у вас выставлен макрос UNICODE? Он должен быть определён перед
#include <ws2tcpip.h>


Возможно, у вас какие-то проблемы с precompiled headers, попробуйте принудительно пересобрать проект.
Атмосферная музыка — www.aventuel.net
Отредактировано 13.11.2022 14:55 dmitry_npi . Предыдущая версия .
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.