<?xml version='1.0' encoding="utf-8"?>
      <rss version='2.0'>
      <channel>
      <title>Форум на Исходниках.RU</title>
      <link>https://forum.sources.ru</link>
      <description>Форум на Исходниках.RU</description>
      <generator>Форум на Исходниках.RU</generator>
  	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=210686&amp;view=findpost&amp;p=1766833</guid>
        <pubDate>Fri, 16 Nov 2007 09:28:02 +0000</pubDate>
        <title>Опять TClientSocket и Asynchronous socket error 10061</title>
        <link>https://forum.sources.ru/index.php?showtopic=210686&amp;view=findpost&amp;p=1766833</link>
        <description><![CDATA[начинающий: спасибо, обыграл ситуацию с try ... except ...<br>
<br>
что-то типа такого<br>
<br>
<div class='tag-code'><span class='pre_code'></span><div class='code  code_collapsed ' title='Подсветка синтаксиса доступна зарегистрированным участникам Форума.' style=''><div><div><ol type="1"><div class="code_line">&nbsp;Client.Address:=ServerIpCombo.Text;</div><div class="code_line">&nbsp;</div><div class="code_line">&nbsp;</div><div class="code_line">&nbsp;&nbsp;ServerConnection:=0;</div><div class="code_line">&nbsp;&nbsp;i:=0;</div><div class="code_line">&nbsp;</div><div class="code_line">&nbsp;&nbsp;while ((ServerConnection&#60;&#62;1) and (i&#60;20)) do</div><div class="code_line">&nbsp;&nbsp;begin</div><div class="code_line">&nbsp;&nbsp; &nbsp;try</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp;Client.Open;</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp;ServerConnection:=1;</div><div class="code_line">&nbsp;&nbsp; &nbsp;except</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp;on Exception do</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp;begin</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;ServerConnection:=-1;</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;inc(i);</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;Sleep(200);</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;Application.ProcessMessages;</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp;end;</div><div class="code_line">&nbsp;&nbsp; &nbsp;end;</div><div class="code_line">&nbsp;&nbsp;end;</div><div class="code_line">&nbsp;</div><div class="code_line">&nbsp;if (ServerConnection&#60;&#62;1) &nbsp;then</div><div class="code_line">&nbsp;begin</div><div class="code_line">&nbsp;MemoLog.Lines.Add(&#39;No server connection&#39;);</div><div class="code_line">&nbsp;Exit;</div><div class="code_line">&nbsp;end;</div></ol></div></div></div></div><script>preloadCodeButtons('1');</script>]]></description>
        <author>начинающий</author>
        <category>Delphi: Сетевое программирование</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=210686&amp;view=findpost&amp;p=1766650</guid>
        <pubDate>Fri, 16 Nov 2007 06:47:38 +0000</pubDate>
        <title>Опять TClientSocket и Asynchronous socket error 10061</title>
        <link>https://forum.sources.ru/index.php?showtopic=210686&amp;view=findpost&amp;p=1766650</link>
        <description><![CDATA[medved_68: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=210686&view=findpost&p=1766631'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>Oleg2004 &#064; <time class="tag-quote__quoted-time" datetime="2007-11-16T06:27:10+00:00">16.11.07, 06:27</time></span><div class='quote '>Это ошибка на стороне партнера по сети - а не в программе  </div></div><br>
<div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=210686&view=findpost&p=1766631'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>Oleg2004 &#064; <time class="tag-quote__quoted-time" datetime="2007-11-16T06:27:10+00:00">16.11.07, 06:27</time></span><div class='quote '>и от типа сокета, на котором работает соединение, она категорически не зависит  </div></div><br>
Спорить было бы глупо.  :D Я упомянул <strong class='tag-b'>только </strong>блокирующий режим потому что у автора при попытках выполнить операции чтения и записи выдавался отказ в доступе. :huh: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=210686&view=findpost&p=1766631'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>Oleg2004 &#064; <time class="tag-quote__quoted-time" datetime="2007-11-16T06:27:10+00:00">16.11.07, 06:27</time></span><div class='quote '>Я бы не был столь категоричным </div></div><div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=210686&view=findpost&p=1766599'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>medved_68 &#064; <time class="tag-quote__quoted-time" datetime="2007-11-16T05:46:15+00:00">16.11.07, 05:46</time></span><div class='quote '>Почему? Очень даже относится. <strong class='tag-b'>Если бы он не активировал сокет </strong>- то и <strong class='tag-b'>такой </strong>ошибки бы не было&#33;&#33;&#33; </div></div> :D Отсюда и &quot;категоричность&quot;. :D]]></description>
        <author>medved_68</author>
        <category>Delphi: Сетевое программирование</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=210686&amp;view=findpost&amp;p=1766631</guid>
        <pubDate>Fri, 16 Nov 2007 06:27:10 +0000</pubDate>
        <title>Опять TClientSocket и Asynchronous socket error 10061</title>
        <link>https://forum.sources.ru/index.php?showtopic=210686&amp;view=findpost&amp;p=1766631</link>
        <description><![CDATA[Oleg2004: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=210686&view=findpost&p=1766599'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>medved_68 &#064; <time class="tag-quote__quoted-time" datetime="2007-11-16T05:46:15+00:00">16.11.07, 05:46</time></span><div class='quote '>Почему? Очень даже относится. </div></div><br>
Я бы не был столь категоричным :D Это ошибка на стороне партнера по сети - а не в программе :D <br>
Эта ошибка выскакивает на любой работающей клиентской программе - на любом броузере и тд - если в доступе отказано - и от типа сокета, на котором работает соединение, она категорически не зависит :no:]]></description>
        <author>Oleg2004</author>
        <category>Delphi: Сетевое программирование</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=210686&amp;view=findpost&amp;p=1766599</guid>
        <pubDate>Fri, 16 Nov 2007 05:46:15 +0000</pubDate>
        <title>Опять TClientSocket и Asynchronous socket error 10061</title>
        <link>https://forum.sources.ru/index.php?showtopic=210686&amp;view=findpost&amp;p=1766599</link>
        <description><![CDATA[medved_68: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=210686&view=findpost&p=1766406'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>Oleg2004 &#064; <time class="tag-quote__quoted-time" datetime="2007-11-15T20:25:56+00:00">15.11.07, 20:25</time></span><div class='quote '>Вообще то эта ошибка как бы к коду не относится  :</div></div><br>
Почему? Очень даже относится. Если бы он не активировал сокет - то и <strong class='tag-b'>такой </strong>ошибки бы не было&#33;&#33;&#33; :D <strong class='tag-b'>начинающий</strong>, сия ошибка вылезет  при отказе в установке соединения только в блокирующем режиме когда сервер, на который &quot;стучишься&quot; не активен. :) <strong class='tag-b'>ErrorCode</strong> здесь бесполезен т.к. в блокирующем режиме обработка операций на сокете линейна, а не асинхронна и такого события, как впрочем и <strong class='tag-b'>onRead, onWrite</strong> попросту не возникнет. Соответственно, попытки принудительно выполнить данные процедуры приведут к отказу в доступе, что впрочем и наблюдается.<div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=210686&view=findpost&p=1766278'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>начинающий &#064; <time class="tag-quote__quoted-time" datetime="2007-11-15T18:12:13+00:00">15.11.07, 18:12</time></span><div class='quote '>но в этот раз надо писать и читать не с помощью onRead,onWrite,а стримами и соответственно type=ctNonBlocking нельзя</div></div><br>
Рекомендую посмотреть в сторону <strong class='tag-b'>TWinSocketStream</strong>, а чтобы ошибка при коннекте не &quot;вылазила&quot; (если сервер не активен) - все операции на сокете заключить в блок <strong class='tag-b'>try...except</strong>, где в секции <strong class='tag-b'>except </strong>вызовом WSAGetLastError узнавать код ошибки, вызвавшей исключение, подавлять ее и выдавать пользователю свое сообщение (при необходимости) или предпринимать какие то другие действия. :)]]></description>
        <author>medved_68</author>
        <category>Delphi: Сетевое программирование</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=210686&amp;view=findpost&amp;p=1766406</guid>
        <pubDate>Thu, 15 Nov 2007 20:25:56 +0000</pubDate>
        <title>Опять TClientSocket и Asynchronous socket error 10061</title>
        <link>https://forum.sources.ru/index.php?showtopic=210686&amp;view=findpost&amp;p=1766406</link>
        <description><![CDATA[Oleg2004: <div class='tag-quote'><span class='tag-quote-prefix'>Цитата</span> <div class='quote '>socket error 10061</div></div><br>
Вообще то эта ошибка как бы к коду не относится :huh: :<br>
<div class='tag-quote'><span class='tag-quote-prefix'>Цитата</span> <div class='quote '>WSAECONNREFUSED 	(10061) В подключении отказано – на хосте партнера не<br>
работает программа запрашиваемого сервиса</div></div>]]></description>
        <author>Oleg2004</author>
        <category>Delphi: Сетевое программирование</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=210686&amp;view=findpost&amp;p=1766278</guid>
        <pubDate>Thu, 15 Nov 2007 18:12:13 +0000</pubDate>
        <title>Опять TClientSocket и Asynchronous socket error 10061</title>
        <link>https://forum.sources.ru/index.php?showtopic=210686&amp;view=findpost&amp;p=1766278</link>
        <description><![CDATA[начинающий: Пишу клиент мелкий но надо использовать потоковые функции<br><br>Надо обойти ненавистную ошибку ?когда к серверу не может достучаться<br><br>Всегда помогало type=ctNonBlocking, обработчик в OnError и в конце ErrorCode:=0<br><br>но в этот раз надо писать и читать не с помощью onRead,onWrite,а стримами и соответственно type=ctNonBlocking нельзя<br><br>Так вот как бы не выставлял ErrorCode:=0 все равно выскакиевает ошибка во время работы программы:(<br>Как только ставлю в Blocking ошибка исчезает, но как только начинаю читать или писать вылазит Socket Must be in blocking mode <br><br>Уважаемые гуру, прошу помощи<br><br><br>использую Delphi 2007]]></description>
        <author>начинающий</author>
        <category>Delphi: Сетевое программирование</category>
      </item>
	
      </channel>
      </rss>
	