Имя: Пароль:
1C
1С v8
WinHttp: как поставить тайм-аут?
0 evgeniy32
 
05.11.11
00:32
WinHttp= Новый COMОбъект("WinHttp.WinHttpRequest.5.1");
           WinHttp.Option(2,"Windows-1251");                  
           WinHttp.Open("GET", Запрос, 0);
           //WinHttp.SetCredentials("phtest1012","phtest1012", 0);
           //WinHttp.SetRequestHeader("Accept-Language", "ru");
           //WinHttp.SetRequestHeader("Accept-Charset","Windows-1251");//
           //WinHttp.setRequestHeader("Content-Language", "ru");
           //WinHttp.setRequestHeader("Content-Charset", "Windows-1251"); //
           WinHttp.setRequestHeader("Content-Type","text/html;charset=utf-8");
           WinHttp.Send();
           ТекстДляАнализа = WinHttp.responsetext;

В переменную Запрос я кидаю какой-нибудь сайт в цикле. Как можно поставить тайм-аут для WinHttp? - т.е. если допустим 10 секунд сайт не отдает код странички - я иду дальше...
1 Jaap Vduul
 
05.11.11
01:06
2 evgeniy32
 
05.11.11
01:24
(1) спасибо!
3 МишельЛагранж
 
05.11.11
02:25
Запощу уж решение для полного счастья - а то за "спасибо" по ссылке могут и не перейти ))

The following scripting example shows how to set all WinHTTP time-outs to 30 seconds, open an HTTP connection, and send an HTTP request.

WinHttp= Новый COMОбъект("WinHttp.WinHttpRequest.5.1");
           WinHttp.Option(2,"Windows-1251");
           // Set time-outs. If time-outs are set, they must
           // be set before open.          
           WinHttp.SetTimeouts(30000, 30000, 30000, 30000);                  
           // Initialize an HTTP request.
           WinHttp.Open("GET", Запрос, 0);

           // Send the HTTP request.
           WinHttp.Send();