Нужно установить сабж. Прога использует HttpSendRequest, если оказывается, что при подключении к серверу оттуда ничего не поступает (ну просто оказалось, например, что это не web-server, а "nc -l 80"), то вызов зависает совсем. И вообще если порт 80 listen, то не обязательно там web. То есть HttpSendRequest просто ждет когда начнется HTTP-ответ... Применение InternetSetOption c INTERNET_OPTION_DATA_RECEIVE_TIMEOUT на такое зависание не влияет. Можно конечно в async режиме, но может можно как-то в обычном?
INTERNET_OPTION_CONNECT_TIMEOUT INTERNET_OPTION_RECEIVE_TIMEOUT INTERNET_OPTION_SEND_TIMEOUT InternetSetOption(A,W)
Точно, INTERNET_OPTION_DATA_RECEIVE_TIMEOUT не работает, а INTERNET_OPTION_RECEIVE_TIMEOUT. Разобрался!