<?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=377305&amp;view=findpost&amp;p=3317167</guid>
        <pubDate>Tue, 28 May 2013 05:53:24 +0000</pubDate>
        <title>Скачать изображение</title>
        <link>https://forum.sources.ru/index.php?showtopic=377305&amp;view=findpost&amp;p=3317167</link>
        <description><![CDATA[Fr0sT: <strong class='tag-b'>antonn</strong>, ну придет указатель на объект, созданный в потоке. И? Он же динамически создан, а не на стеке. Всё тут нормально.<div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=377305&view=findpost&p=3317028'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>Protector &#064; <time class="tag-quote__quoted-time" datetime="2013-05-27T18:48:22+04:00">27.05.13, 14:48</time></span><div class='quote '>А что же трю?</div></div><br>
См. первый мой пост<br>
<div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=377305&view=findpost&p=3317028'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>Protector &#064; <time class="tag-quote__quoted-time" datetime="2013-05-27T14:48:22+00:00">27.05.13, 14:48</time></span><div class='quote '>результат идентичен</div></div><br>
А проверь сначала без потока. Если не сработает - приведи полный код потока и обработчиков формы на данный момент]]></description>
        <author>Fr0sT</author>
        <category>Delphi: Сетевое программирование</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=377305&amp;view=findpost&amp;p=3317154</guid>
        <pubDate>Tue, 28 May 2013 05:31:17 +0000</pubDate>
        <title>Скачать изображение</title>
        <link>https://forum.sources.ru/index.php?showtopic=377305&amp;view=findpost&amp;p=3317154</link>
        <description><![CDATA[antonn: так все таки в #22 я неправ и через сообщение (не copydata) отправляется полная копия (новый экземпляр) или все таки ссылка (и автору кода пока просто светит удача (например, что объект не уничтожился при завершении потока до того как с ним закончилась работа вне потока))?]]></description>
        <author>antonn</author>
        <category>Delphi: Сетевое программирование</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=377305&amp;view=findpost&amp;p=3317069</guid>
        <pubDate>Mon, 27 May 2013 16:51:17 +0000</pubDate>
        <title>Скачать изображение</title>
        <link>https://forum.sources.ru/index.php?showtopic=377305&amp;view=findpost&amp;p=3317069</link>
        <description><![CDATA[Pavia: <strong class='tag-b'>Protector</strong><br>
<a class='tag-url' href='http://www.gunsmoker.ru/2009/05/blog-post_24.html' target='_blank'>http://www.gunsmoker.ru/2009/05/blog-post_24.html</a><br>
Советую при поиске утечки потренироваться на примерах.]]></description>
        <author>Pavia</author>
        <category>Delphi: Сетевое программирование</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=377305&amp;view=findpost&amp;p=3317064</guid>
        <pubDate>Mon, 27 May 2013 16:45:00 +0000</pubDate>
        <title>Скачать изображение</title>
        <link>https://forum.sources.ru/index.php?showtopic=377305&amp;view=findpost&amp;p=3317064</link>
        <description><![CDATA[Protector: Мне кажется ,сама Еврика вызывает утечку. Чем еще можно проверять утечки памяти? <br>
<br>
<span class="tag-color tag-color-named" data-value="gray" style="color: gray"><span class='tag-size' data-value='7' style='font-size:7pt;'>Добавлено <time class="tag-mergetime" datetime="2013-05-27T16:46:13+00:00">27.05.13, 16:46</time></span></span><br>
<strong class='tag-b'>medved_68</strong>,По жанру , в этом месте идет оператор case.]]></description>
        <author>Protector</author>
        <category>Delphi: Сетевое программирование</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=377305&amp;view=findpost&amp;p=3317063</guid>
        <pubDate>Mon, 27 May 2013 16:42:51 +0000</pubDate>
        <title>Скачать изображение</title>
        <link>https://forum.sources.ru/index.php?showtopic=377305&amp;view=findpost&amp;p=3317063</link>
        <description><![CDATA[medved_68: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=377305&view=findpost&p=3317060'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>Pavia &#064; <time class="tag-quote__quoted-time" datetime="2013-05-27T16:32:56+00:00">27.05.13, 16:32</time></span><div class='quote '>И когда он освобождается?<br>
</div></div><br>
<div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=377305&view=findpost&p=3317062'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>Protector &#064; <time class="tag-quote__quoted-time" datetime="2013-05-27T16:37:33+00:00">27.05.13, 16:37</time></span><div class='quote '>finally<br>
  i.Free; //Вот где .</div></div><br>
Как там по жанру должно быть? А...Вопросов не имею...Так? :D]]></description>
        <author>medved_68</author>
        <category>Delphi: Сетевое программирование</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=377305&amp;view=findpost&amp;p=3317062</guid>
        <pubDate>Mon, 27 May 2013 16:37:33 +0000</pubDate>
        <title>Скачать изображение</title>
        <link>https://forum.sources.ru/index.php?showtopic=377305&amp;view=findpost&amp;p=3317062</link>
        <description><![CDATA[Protector: <strong class='tag-b'>Pavia</strong>,<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">procedure TDownloader.Load;</div><div class="code_line">var</div><div class="code_line">&nbsp;&nbsp;I:TidHTTP;</div><div class="code_line">&nbsp;&nbsp;S:TMemoryStream;</div><div class="code_line">&nbsp;&nbsp;JPEG: TJPEGImage;</div><div class="code_line">begin</div><div class="code_line">&nbsp;&nbsp;i:=TIdHTTP.Create(nil); </div><div class="code_line">&nbsp;&nbsp;S:=TMemoryStream.Create;</div><div class="code_line">&nbsp;&nbsp;JPEG:=TJPEGImage.Create;</div><div class="code_line">try</div><div class="code_line">&nbsp;&nbsp;I.Get(URL,S);</div><div class="code_line">&nbsp;&nbsp;S.Position:=0;</div><div class="code_line">&nbsp;&nbsp;Jpeg.LoadFromStream(S);</div><div class="code_line">&nbsp;&nbsp;Image.Picture.Assign(JPeg);</div><div class="code_line">finally</div><div class="code_line">&nbsp;&nbsp;i.Free; //Вот где .</div><div class="code_line">&nbsp;&nbsp;S.Free;</div><div class="code_line">&nbsp;&nbsp;JPeg.Free;</div><div class="code_line">end;</div><div class="code_line">end;</div></ol></div></div></div></div><script>preloadCodeButtons('1');</script>]]></description>
        <author>Protector</author>
        <category>Delphi: Сетевое программирование</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=377305&amp;view=findpost&amp;p=3317060</guid>
        <pubDate>Mon, 27 May 2013 16:32:56 +0000</pubDate>
        <title>Скачать изображение</title>
        <link>https://forum.sources.ru/index.php?showtopic=377305&amp;view=findpost&amp;p=3317060</link>
        <description><![CDATA[Pavia: Вопрос для <strong class='tag-b'>Protector</strong><br>
<div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=377305&view=findpost&p=3317059'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>Protector &#064; <time class="tag-quote__quoted-time" datetime="2013-05-27T16:30:58+00:00">27.05.13, 16:30</time></span><div class='quote '>medved_68,Это локальная переменная .</div></div><br>
А напомни, где выделяется память для объектов на стеке или в куче?<br>
И когда он освобождается?]]></description>
        <author>Pavia</author>
        <category>Delphi: Сетевое программирование</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=377305&amp;view=findpost&amp;p=3317059</guid>
        <pubDate>Mon, 27 May 2013 16:30:58 +0000</pubDate>
        <title>Скачать изображение</title>
        <link>https://forum.sources.ru/index.php?showtopic=377305&amp;view=findpost&amp;p=3317059</link>
        <description><![CDATA[Protector: <strong class='tag-b'>medved_68</strong>,Это локальная переменная .]]></description>
        <author>Protector</author>
        <category>Delphi: Сетевое программирование</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=377305&amp;view=findpost&amp;p=3317054</guid>
        <pubDate>Mon, 27 May 2013 16:14:28 +0000</pubDate>
        <title>Скачать изображение</title>
        <link>https://forum.sources.ru/index.php?showtopic=377305&amp;view=findpost&amp;p=3317054</link>
        <description><![CDATA[medved_68: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=377305&view=findpost&p=3316953'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>Protector &#064; <time class="tag-quote__quoted-time" datetime="2013-05-27T11:40:37+00:00">27.05.13, 11:40</time></span><div class='quote '>medved_68,<br>
CollapsedWrap disabledLine numbers off<br>
<br>
    destructor TDownloader.Destroy;<br>
    begin<br>
      inherited;<br>
    end;</div></div><br>
А. Тогда вопросов нет.  ;) Особенно в разрезе:<div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=377305&view=findpost&p=3316721'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>Protector &#064; <time class="tag-quote__quoted-time" datetime="2013-05-26T15:14:53+00:00">26.05.13, 15:14</time></span><div class='quote '><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">i:=TIdHTTP.Create(nil);</div></ol></div></div></div></div></div></div> :D]]></description>
        <author>medved_68</author>
        <category>Delphi: Сетевое программирование</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=377305&amp;view=findpost&amp;p=3317045</guid>
        <pubDate>Mon, 27 May 2013 15:38:26 +0000</pubDate>
        <title>Скачать изображение</title>
        <link>https://forum.sources.ru/index.php?showtopic=377305&amp;view=findpost&amp;p=3317045</link>
        <description><![CDATA[antonn: <div class='tag-quote'><span class='tag-quote-prefix'>Цитата</span> <div class='quote '>C чего бы? Изображение создается в потоке и отправляется форме, после этого в потоке не используется. Таким образом у меня передаются объекты и строки и ничего не валится.</div></div><br>
я никогда так не делал и не разбирался, но думал что в сообщении придет указатель на объект созданный в потоке]]></description>
        <author>antonn</author>
        <category>Delphi: Сетевое программирование</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=377305&amp;view=findpost&amp;p=3317028</guid>
        <pubDate>Mon, 27 May 2013 14:48:22 +0000</pubDate>
        <title>Скачать изображение</title>
        <link>https://forum.sources.ru/index.php?showtopic=377305&amp;view=findpost&amp;p=3317028</link>
        <description><![CDATA[Protector: <strong class='tag-b'>Fr0sT</strong>, результат идентичен . <br>
<br>
<span class="tag-color tag-color-named" data-value="gray" style="color: gray"><span class='tag-size' data-value='7' style='font-size:7pt;'>Добавлено <time class="tag-mergetime" datetime="2013-05-27T15:01:05+00:00">27.05.13, 15:01</time></span></span><br>
<div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=377305&view=findpost&p=3317027'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>Fr0sT &#064; <time class="tag-quote__quoted-time" datetime="2013-05-27T14:32:32+00:00">27.05.13, 14:32</time></span><div class='quote '>Тем не менее, это не ТРУ, и я это посоветовал исключительно в образовательных целях.</div></div><br>
А что же трю?]]></description>
        <author>Protector</author>
        <category>Delphi: Сетевое программирование</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=377305&amp;view=findpost&amp;p=3317027</guid>
        <pubDate>Mon, 27 May 2013 14:32:32 +0000</pubDate>
        <title>Скачать изображение</title>
        <link>https://forum.sources.ru/index.php?showtopic=377305&amp;view=findpost&amp;p=3317027</link>
        <description><![CDATA[Fr0sT: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=377305&view=findpost&p=3316928'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>antonn &#064; <time class="tag-quote__quoted-time" datetime="2013-05-27T10:41:25+00:00">27.05.13, 10:41</time></span><div class='quote '>оно не свалится с ошибкой без синхронизации?</div></div><br>
C чего бы? Изображение создается в потоке и отправляется форме, после этого в потоке не используется. Таким образом у меня передаются объекты и строки и ничего не валится.<br>
<div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=377305&view=findpost&p=3317006'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>Protector &#064; <time class="tag-quote__quoted-time" datetime="2013-05-27T13:59:33+00:00">27.05.13, 13:59</time></span><div class='quote '>Следуя вашей идеи :</div></div><br>
Нет уж, пардоньте, в моей идее не было ничего от приведенной каши.<br>
Начать хотя бы с того, что судя по названию поля hCanv оно содержит хэндл явно не главной формы. А оно должно посылаться именно главной форме.<br>
Затем, copydata - на фига? Если уж так не хочется делать true асинхронный способ - пожалуйста, SendMessage(MainFormHandle, MSG_IMGGOT, 0, LPARAM(Img)) будет синхронным (пока форма не обработает сообщение - поток ждет). Также можно передать и мемористрим, без необходимости копировать его. Метод в таком случае сокращается до<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">Thread.Execute;</div><div class="code_line">begin</div><div class="code_line">&nbsp;&nbsp;...download to stream...</div><div class="code_line">&nbsp;&nbsp;SendMessage(MainFormHandle, MSG_IMGGOT, 0, LPARAM(Str));</div><div class="code_line">&nbsp;&nbsp;Str.Free;</div><div class="code_line">end;</div><div class="code_line">&nbsp;</div><div class="code_line">MainForm.MsgImgGot;</div><div class="code_line">begin</div><div class="code_line">&nbsp;&nbsp;Str := TMemoryStream(Msg.lParam); &nbsp;</div><div class="code_line">&nbsp;&nbsp;J.LoadFromStream(S);</div><div class="code_line">&nbsp;&nbsp;Image1.Assign(J);</div><div class="code_line">&nbsp;&nbsp;J.Free;</div><div class="code_line">end;</div></ol></div></div></div></div> <br>
<br>
<span class="tag-color tag-color-named" data-value="gray" style="color: gray"><span class='tag-size' data-value='7' style='font-size:7pt;'>Добавлено <time class="tag-mergetime" datetime="2013-05-27T14:34:18+00:00">27.05.13, 14:34</time></span></span><br>
Тем не менее, это не ТРУ, и я это посоветовал исключительно в образовательных целях.]]></description>
        <author>Fr0sT</author>
        <category>Delphi: Сетевое программирование</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=377305&amp;view=findpost&amp;p=3317006</guid>
        <pubDate>Mon, 27 May 2013 13:59:33 +0000</pubDate>
        <title>Скачать изображение</title>
        <link>https://forum.sources.ru/index.php?showtopic=377305&amp;view=findpost&amp;p=3317006</link>
        <description><![CDATA[Protector: <strong class='tag-b'>Fr0sT</strong>,<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">procedure TDownloader.Execute;</div><div class="code_line">var</div><div class="code_line">&nbsp;&nbsp;I:TidHTTP;</div><div class="code_line">begin</div><div class="code_line">inherited;</div><div class="code_line">&nbsp;&nbsp;i:=TIdHTTP.Create(nil);</div><div class="code_line">try</div><div class="code_line">try</div><div class="code_line">&nbsp;&nbsp;I.Get(URL,S);</div><div class="code_line">except</div><div class="code_line">end;</div><div class="code_line">&nbsp;&nbsp;SetImg;</div><div class="code_line">finally &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; </div><div class="code_line">&nbsp;&nbsp;FreeAndNil(i);</div><div class="code_line">end;</div><div class="code_line">&nbsp;</div><div class="code_line">end;</div><div class="code_line">&nbsp;</div><div class="code_line">procedure TDownloader.SetImg;</div><div class="code_line">var</div><div class="code_line">&nbsp;&nbsp;copydata:COPYDATASTRUCT;</div><div class="code_line">begin</div><div class="code_line">&nbsp;&nbsp; &nbsp;ZeroMemory(@copydata, SizeOf(TCopyDataStruct));</div><div class="code_line">&nbsp;&nbsp; &nbsp;copydata.dwData:=0;</div><div class="code_line">&nbsp;&nbsp; &nbsp;copydata.cbData:=S.Size;</div><div class="code_line">&nbsp;&nbsp; &nbsp;copydata.lpData:=S.Memory;</div><div class="code_line">&nbsp;&nbsp; &nbsp;SendMessage(Self.hCanv,WM_COPYDATA,Longint(Self.hCanv),lparam(@copydata));</div><div class="code_line">end;</div><div class="code_line">&nbsp;</div><div class="code_line">procedure TForm1.RecvData(var Msg: TWMCopyData);</div><div class="code_line">var</div><div class="code_line">&nbsp;&nbsp;S:TMemoryStream;</div><div class="code_line">&nbsp;&nbsp;J:TJPEGImage;</div><div class="code_line">&nbsp;&nbsp;Data: COPYDATASTRUCT;</div><div class="code_line">begin</div><div class="code_line">&nbsp;&nbsp;Data:=Msg.CopyDataStruct^;</div><div class="code_line">&nbsp;&nbsp;S:=TMemoryStream.Create;</div><div class="code_line">&nbsp;&nbsp;J:=TJPEGImage.Create;</div><div class="code_line">try</div><div class="code_line">&nbsp;&nbsp;S.Write(Data.lpData^,Data.cbData);</div><div class="code_line">&nbsp;&nbsp;S.Position:=0;</div><div class="code_line">&nbsp;&nbsp;J.LoadFromStream(S);</div><div class="code_line">&nbsp;&nbsp;Image1.Assign(J);</div><div class="code_line">finally</div><div class="code_line">&nbsp;&nbsp;S.Free;</div><div class="code_line">&nbsp;&nbsp;J.Free;</div><div class="code_line">end;</div><div class="code_line">end;</div></ol></div></div></div></div><br>
<br>
А изображение передается поврежденным.]]></description>
        <author>Protector</author>
        <category>Delphi: Сетевое программирование</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=377305&amp;view=findpost&amp;p=3316953</guid>
        <pubDate>Mon, 27 May 2013 11:40:37 +0000</pubDate>
        <title>Скачать изображение</title>
        <link>https://forum.sources.ru/index.php?showtopic=377305&amp;view=findpost&amp;p=3316953</link>
        <description><![CDATA[Protector: <strong class='tag-b'>medved_68</strong>,<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">destructor TDownloader.Destroy;</div><div class="code_line">begin</div><div class="code_line">&nbsp;&nbsp;inherited;</div><div class="code_line">end;</div></ol></div></div></div></div><br>
 :huh: <br>
<br>
<span class="tag-color tag-color-named" data-value="gray" style="color: gray"><span class='tag-size' data-value='7' style='font-size:7pt;'>Добавлено <time class="tag-mergetime" datetime="2013-05-27T11:42:51+00:00">27.05.13, 11:42</time></span></span><br>
<strong class='tag-b'>Fr0sT</strong>, Вот обращение к изображению по хендлу -это ,как по мне, выход . <br>
<br>
<span class="tag-color tag-color-named" data-value="gray" style="color: gray"><span class='tag-size' data-value='7' style='font-size:7pt;'>Добавлено <time class="tag-mergetime" datetime="2013-05-27T11:45:44+00:00">27.05.13, 11:45</time></span></span><br>
<div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=377305&view=findpost&p=3316928'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>antonn &#064; <time class="tag-quote__quoted-time" datetime="2013-05-27T10:41:25+00:00">27.05.13, 10:41</time></span><div class='quote '>оно не свалится с ошибкой без синхронизации?</div></div>,<br>
Нет  :)]]></description>
        <author>Protector</author>
        <category>Delphi: Сетевое программирование</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=377305&amp;view=findpost&amp;p=3316928</guid>
        <pubDate>Mon, 27 May 2013 10:41:25 +0000</pubDate>
        <title>Скачать изображение</title>
        <link>https://forum.sources.ru/index.php?showtopic=377305&amp;view=findpost&amp;p=3316928</link>
        <description><![CDATA[antonn: оно не свалится с ошибкой без синхронизации? я бы эвентом сделал передав через него указатель на картинку и вызвав его в методе с синхронизацией. ну а при создании потока обработчик в форме повесил бы]]></description>
        <author>antonn</author>
        <category>Delphi: Сетевое программирование</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=377305&amp;view=findpost&amp;p=3316807</guid>
        <pubDate>Mon, 27 May 2013 06:48:34 +0000</pubDate>
        <title>Скачать изображение</title>
        <link>https://forum.sources.ru/index.php?showtopic=377305&amp;view=findpost&amp;p=3316807</link>
        <description><![CDATA[Fr0sT: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=377305&view=findpost&p=3316724'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>faust777 &#064; <time class="tag-quote__quoted-time" datetime="2013-05-26T15:34:32+00:00">26.05.13, 15:34</time></span><div class='quote '>А в общем, как то так)..</div></div><br>
А удалять поток кто будет? <br>
<br>
<span class="tag-color tag-color-named" data-value="gray" style="color: gray"><span class='tag-size' data-value='7' style='font-size:7pt;'>Добавлено <time class="tag-mergetime" datetime="2013-05-27T06:56:43+00:00">27.05.13, 06:56</time></span></span><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">const </div><div class="code_line">&nbsp;&nbsp;MSG_IMGGOT = WM_APP + 1;</div><div class="code_line">&nbsp;</div><div class="code_line">TDownThread.Create(URL: string; ResponseWnd: HWND);</div><div class="code_line">begin</div><div class="code_line">&nbsp;&nbsp;fURL := URL;</div><div class="code_line">&nbsp;&nbsp;fResp := ResponseWnd;</div><div class="code_line">&nbsp;&nbsp;inherited Create(False);</div><div class="code_line">&nbsp;&nbsp;FreeOnTerminate := True;</div><div class="code_line">end;</div><div class="code_line">&nbsp;</div><div class="code_line">TDownThread.Execute;</div><div class="code_line">begin</div><div class="code_line">&nbsp;&nbsp;... Str := GetURL(fURL); ...</div><div class="code_line">&nbsp;&nbsp;Img := TJPEG.Create;</div><div class="code_line">&nbsp;&nbsp;Img.LoadFromStream(S);</div><div class="code_line">&nbsp;&nbsp;... // free idHTTP, Stream...</div><div class="code_line">&nbsp;&nbsp;PostMessage(fResp, MSG_IMGGOT, 0, LPARAM(Img));</div><div class="code_line">end;</div><div class="code_line">&nbsp;</div><div class="code_line">TForm.Click</div><div class="code_line">begin</div><div class="code_line">&nbsp;&nbsp;TDownThread.Create(&#39;blabla.com/1.jpg&#39;, Handle);</div><div class="code_line">end;</div><div class="code_line">&nbsp;</div><div class="code_line">TForm.MsgImgGot(Msg: TMessage); // message MSG_IMGGOT;</div><div class="code_line">var</div><div class="code_line">&nbsp;&nbsp;Img: TJPEG;</div><div class="code_line">begin</div><div class="code_line">&nbsp;&nbsp;Img := TJPEG(Msg.lParam);</div><div class="code_line">&nbsp;&nbsp;Image1.Assign(Img);</div><div class="code_line">&nbsp;&nbsp;Img.Free;</div><div class="code_line">end;</div></ol></div></div></div></div>]]></description>
        <author>Fr0sT</author>
        <category>Delphi: Сетевое программирование</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=377305&amp;view=findpost&amp;p=3316783</guid>
        <pubDate>Mon, 27 May 2013 03:08:17 +0000</pubDate>
        <title>Скачать изображение</title>
        <link>https://forum.sources.ru/index.php?showtopic=377305&amp;view=findpost&amp;p=3316783</link>
        <description><![CDATA[medved_68: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=377305&view=findpost&p=3316729'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>Protector &#064; <time class="tag-quote__quoted-time" datetime="2013-05-26T15:54:59+00:00">26.05.13, 15:54</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=377305&view=findpost&p=3316721'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>Protector &#064; <time class="tag-quote__quoted-time" datetime="2013-05-26T15:14:53+00:00">26.05.13, 15:14</time></span><div class='quote '>А в чем причина утечки памяти? </div></div><br>
Деструктор потока покажи. :D]]></description>
        <author>medved_68</author>
        <category>Delphi: Сетевое программирование</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=377305&amp;view=findpost&amp;p=3316774</guid>
        <pubDate>Sun, 26 May 2013 21:42:25 +0000</pubDate>
        <title>Скачать изображение</title>
        <link>https://forum.sources.ru/index.php?showtopic=377305&amp;view=findpost&amp;p=3316774</link>
        <description><![CDATA[faust777: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=377305&view=findpost&p=3316763'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>Mr.Delphist &#064; <time class="tag-quote__quoted-time" datetime="2013-05-26T19:19:02+00:00">26.05.13, 19:19</time></span><div class='quote '>Если написать вместо except слово finally, то можно обо....</div></div><br>
Тут уж кому как) да и тема не про то..вроде).. <br>
<br>
Щас то в чём уже проблема.. ведь очевидно что зависаний ни каких нет..<br>
А утечки..Без них Indy наверно ни когда не будет... Насколько критично это, вот в чём вопрос.. <br>
Или как вариант ещё, сделать своё &quot;закрытие программы&quot;... что бы когда &quot;юзер завершает приложение&quot;, всё остановливалось..очищалось..]]></description>
        <author>faust777</author>
        <category>Delphi: Сетевое программирование</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=377305&amp;view=findpost&amp;p=3316763</guid>
        <pubDate>Sun, 26 May 2013 19:19:02 +0000</pubDate>
        <title>Скачать изображение</title>
        <link>https://forum.sources.ru/index.php?showtopic=377305&amp;view=findpost&amp;p=3316763</link>
        <description><![CDATA[Mr.Delphist: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=377305&view=findpost&p=3316724'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>faust777 &#064; <time class="tag-quote__quoted-time" datetime="2013-05-26T15:34:32+00:00">26.05.13, 15:34</time></span><div class='quote '>except<br>
 FreeAndNil(S);<br>
 FreeAndNil(HTTP);<br>
 JPeg.Free;<br>
end;<br>
  if Assigned(S) then FreeAndNil(S);<br>
  if Assigned(JPEG) then JPEG.Free;<br>
  if Assigned(HTTP) then FreeAndNil(HTTP);<br>
end;</div></div><br>
<br>
Если написать вместо <strong class='tag-b'>except</strong> слово <strong class='tag-b'>finally</strong>, то можно обойтись одним экземпляром удалений ресурсов.<br>
Единственный ньюанс - ожидается ли подавление исключений? Или это такой side-effect?]]></description>
        <author>Mr.Delphist</author>
        <category>Delphi: Сетевое программирование</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=377305&amp;view=findpost&amp;p=3316729</guid>
        <pubDate>Sun, 26 May 2013 15:54:59 +0000</pubDate>
        <title>Скачать изображение</title>
        <link>https://forum.sources.ru/index.php?showtopic=377305&amp;view=findpost&amp;p=3316729</link>
        <description><![CDATA[Protector: <strong class='tag-b'>faust777</strong>,<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">constructor TDownloader.Create(const URL: string; var Img: TImage);</div><div class="code_line">begin</div><div class="code_line">inherited Create(false);</div><div class="code_line">Self.Url:=URL;</div><div class="code_line">Self.Image:=Img;</div><div class="code_line">Self.FreeOnTerminate:=true;</div><div class="code_line">end;</div></ol></div></div></div></div><br>
Это весь код . <br>
<br>
<span class="tag-color tag-color-named" data-value="gray" style="color: gray"><span class='tag-size' data-value='7' style='font-size:7pt;'>Добавлено <time class="tag-mergetime" datetime="2013-05-26T15:58:10+00:00">26.05.13, 15:58</time></span></span><br>
<div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=377305&view=findpost&p=3316727'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>faust777 &#064; <time class="tag-quote__quoted-time" datetime="2013-05-26T15:50:23+00:00">26.05.13, 15:50</time></span><div class='quote '>компилятор это даже запустить не даст..</div></div><br>
Не утрируйте .Все работает ,корректно пока не наступает описанная ситуация .]]></description>
        <author>Protector</author>
        <category>Delphi: Сетевое программирование</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=377305&amp;view=findpost&amp;p=3316727</guid>
        <pubDate>Sun, 26 May 2013 15:50:23 +0000</pubDate>
        <title>Скачать изображение</title>
        <link>https://forum.sources.ru/index.php?showtopic=377305&amp;view=findpost&amp;p=3316727</link>
        <description><![CDATA[faust777: для VCL например)<br>
<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;&nbsp;S.Position:=0;</div><div class="code_line">&nbsp;&nbsp;Jpeg.LoadFromStream(S);</div><div class="code_line">try</div><div class="code_line">Image.Picture.Assign(Jpeg);</div><div class="code_line">except</div><div class="code_line">end;</div><div class="code_line">finally</div><div class="code_line">&nbsp;&nbsp;i.Free;</div></ol></div></div></div></div><br>
<br>
Такое в принципе не может работать. компилятор это даже запустить не даст..<br>
<br>
Давай тогда больше когда своего, а не не понятные обрывки.]]></description>
        <author>faust777</author>
        <category>Delphi: Сетевое программирование</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=377305&amp;view=findpost&amp;p=3316725</guid>
        <pubDate>Sun, 26 May 2013 15:41:17 +0000</pubDate>
        <title>Скачать изображение</title>
        <link>https://forum.sources.ru/index.php?showtopic=377305&amp;view=findpost&amp;p=3316725</link>
        <description><![CDATA[Protector: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=377305&view=findpost&p=3316724'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>faust777 &#064; <time class="tag-quote__quoted-time" datetime="2013-05-26T15:34:32+00:00">26.05.13, 15:34</time></span><div class='quote '><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">Image.Picture.Assign(Jpeg);</div></ol></div></div></div></div>  :o это как у тебя &quot;поток&quot; определяет Где находиться <strong class='tag-b'>Image</strong>?<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">type</div><div class="code_line">&nbsp;&nbsp;TForm1 = class(TForm)</div><div class="code_line">&nbsp;&nbsp; &nbsp;Button1: TButton;</div><div class="code_line">&nbsp;&nbsp; &nbsp;Image1: TImage;</div><div class="code_line">&nbsp;&nbsp; &nbsp;procedure Button1Click(Sender: TObject);</div><div class="code_line">&nbsp;&nbsp;private</div><div class="code_line">&nbsp;&nbsp; &nbsp;{ Private declarations }</div><div class="code_line">&nbsp;&nbsp;public</div><div class="code_line">&nbsp;&nbsp; &nbsp;{ Public declarations }</div><div class="code_line">&nbsp;&nbsp;end;</div><div class="code_line">&nbsp;</div><div class="code_line">&nbsp;&nbsp;TDownloader = class(TThread)</div><div class="code_line">&nbsp;&nbsp;private</div><div class="code_line">&nbsp;&nbsp; &nbsp;HTTP:TidHTTP;</div><div class="code_line">&nbsp;&nbsp; &nbsp;JPEG: TJPEGImage;</div><div class="code_line">&nbsp;&nbsp; &nbsp;procedure EndDown;</div><div class="code_line">&nbsp;&nbsp;protected</div><div class="code_line">&nbsp;&nbsp; &nbsp;procedure Execute; override;</div><div class="code_line">&nbsp;&nbsp;public</div><div class="code_line">&nbsp;&nbsp; &nbsp;constructor Create(CreateSuspended: Boolean);</div><div class="code_line">&nbsp;&nbsp;end;</div><div class="code_line">&nbsp;</div><div class="code_line">var</div><div class="code_line">&nbsp;&nbsp;Form1: TForm1;</div><div class="code_line">&nbsp;</div><div class="code_line">implementation</div><div class="code_line">&nbsp;</div><div class="code_line">{$R *.dfm}</div><div class="code_line">&nbsp;</div><div class="code_line">procedure TForm1.Button1Click(Sender: TObject);</div><div class="code_line">begin</div><div class="code_line">&nbsp;TDownloader.Create(False);</div><div class="code_line">end;</div><div class="code_line">&nbsp;</div><div class="code_line">constructor TDownloader.Create(CreateSuspended: Boolean);</div><div class="code_line">begin</div><div class="code_line">&nbsp;&nbsp;inherited Create(CreateSuspended);</div><div class="code_line">end;</div><div class="code_line">&nbsp;</div><div class="code_line">procedure TDownloader.Execute;</div><div class="code_line">var</div><div class="code_line">&nbsp;&nbsp;S:TMemoryStream;</div><div class="code_line">begin</div><div class="code_line">&nbsp;HTTP:= TIdHTTP.Create(nil);</div><div class="code_line">&nbsp;S:= TMemoryStream.Create;</div><div class="code_line">&nbsp;JPEG:=TJPEGImage.Create;</div><div class="code_line">&nbsp;try</div><div class="code_line">&nbsp;&nbsp;HTTP.Get(&#39;http://forum.sources.ru/uploads/av-150083.jpg&#39;,S);</div><div class="code_line">&nbsp;&nbsp;S.Position:=0;</div><div class="code_line">&nbsp;&nbsp;JPEG.LoadFromStream(S);</div><div class="code_line">&nbsp;&nbsp; Synchronize(EndDown);</div><div class="code_line">&nbsp;except</div><div class="code_line">&nbsp;&nbsp;FreeAndNil(S);</div><div class="code_line">&nbsp;&nbsp;FreeAndNil(HTTP);</div><div class="code_line">&nbsp;&nbsp;JPeg.Free;</div><div class="code_line">&nbsp;end;</div><div class="code_line">&nbsp;&nbsp; if Assigned(S) then FreeAndNil(S);</div><div class="code_line">&nbsp;&nbsp; if Assigned(JPEG) then JPEG.Free;</div><div class="code_line">&nbsp;&nbsp; if Assigned(HTTP) then FreeAndNil(HTTP);</div><div class="code_line">end;</div><div class="code_line">&nbsp;</div><div class="code_line">procedure TDownloader.EndDown;</div><div class="code_line">begin</div><div class="code_line">&nbsp;Form1.Image1.Picture.Assign(JPEG);</div><div class="code_line">end;</div></ol></div></div></div></div></div></div><br>
Каждую с n картинок ,загружает отдельный поток .Зачем синхронизация?]]></description>
        <author>Protector</author>
        <category>Delphi: Сетевое программирование</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=377305&amp;view=findpost&amp;p=3316724</guid>
        <pubDate>Sun, 26 May 2013 15:34:32 +0000</pubDate>
        <title>Скачать изображение</title>
        <link>https://forum.sources.ru/index.php?showtopic=377305&amp;view=findpost&amp;p=3316724</link>
        <description><![CDATA[faust777: <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">Image.Picture.Assign(Jpeg);</div></ol></div></div></div></div>  :o это как у тебя &quot;поток&quot; определяет Где находиться <strong class='tag-b'>Image</strong>?<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">type</div><div class="code_line">&nbsp;&nbsp;TForm1 = class(TForm)</div><div class="code_line">&nbsp;&nbsp; &nbsp;Button1: TButton;</div><div class="code_line">&nbsp;&nbsp; &nbsp;Image1: TImage;</div><div class="code_line">&nbsp;&nbsp; &nbsp;procedure Button1Click(Sender: TObject);</div><div class="code_line">&nbsp;&nbsp;private</div><div class="code_line">&nbsp;&nbsp; &nbsp;{ Private declarations }</div><div class="code_line">&nbsp;&nbsp;public</div><div class="code_line">&nbsp;&nbsp; &nbsp;{ Public declarations }</div><div class="code_line">&nbsp;&nbsp;end;</div><div class="code_line">&nbsp;</div><div class="code_line">&nbsp;&nbsp;TDownloader = class(TThread)</div><div class="code_line">&nbsp;&nbsp;private</div><div class="code_line">&nbsp;&nbsp; &nbsp;HTTP:TidHTTP;</div><div class="code_line">&nbsp;&nbsp; &nbsp;JPEG: TJPEGImage;</div><div class="code_line">&nbsp;&nbsp; &nbsp;procedure EndDown;</div><div class="code_line">&nbsp;&nbsp;protected</div><div class="code_line">&nbsp;&nbsp; &nbsp;procedure Execute; override;</div><div class="code_line">&nbsp;&nbsp;public</div><div class="code_line">&nbsp;&nbsp; &nbsp;constructor Create(CreateSuspended: Boolean);</div><div class="code_line">&nbsp;&nbsp;end;</div><div class="code_line">&nbsp;</div><div class="code_line">var</div><div class="code_line">&nbsp;&nbsp;Form1: TForm1;</div><div class="code_line">&nbsp;</div><div class="code_line">implementation</div><div class="code_line">&nbsp;</div><div class="code_line">{$R *.dfm}</div><div class="code_line">&nbsp;</div><div class="code_line">procedure TForm1.Button1Click(Sender: TObject);</div><div class="code_line">begin</div><div class="code_line">&nbsp;TDownloader.Create(False);</div><div class="code_line">end;</div><div class="code_line">&nbsp;</div><div class="code_line">constructor TDownloader.Create(CreateSuspended: Boolean);</div><div class="code_line">begin</div><div class="code_line">&nbsp;&nbsp;inherited Create(CreateSuspended);</div><div class="code_line">end;</div><div class="code_line">&nbsp;</div><div class="code_line">procedure TDownloader.Execute;</div><div class="code_line">var</div><div class="code_line">&nbsp;&nbsp;S:TMemoryStream;</div><div class="code_line">begin</div><div class="code_line">&nbsp;HTTP:= TIdHTTP.Create(nil);</div><div class="code_line">&nbsp;S:= TMemoryStream.Create;</div><div class="code_line">&nbsp;JPEG:=TJPEGImage.Create;</div><div class="code_line">&nbsp;try</div><div class="code_line">&nbsp;&nbsp;HTTP.Get(&#39;http://forum.sources.ru/uploads/av-150083.jpg&#39;,S);</div><div class="code_line">&nbsp;&nbsp;S.Position:=0;</div><div class="code_line">&nbsp;&nbsp;JPEG.LoadFromStream(S);</div><div class="code_line">&nbsp;&nbsp; Synchronize(EndDown);</div><div class="code_line">&nbsp;except</div><div class="code_line">&nbsp;&nbsp;FreeAndNil(S);</div><div class="code_line">&nbsp;&nbsp;FreeAndNil(HTTP);</div><div class="code_line">&nbsp;&nbsp;JPeg.Free;</div><div class="code_line">&nbsp;end;</div><div class="code_line">&nbsp;&nbsp; if Assigned(S) then FreeAndNil(S);</div><div class="code_line">&nbsp;&nbsp; if Assigned(JPEG) then JPEG.Free;</div><div class="code_line">&nbsp;&nbsp; if Assigned(HTTP) then FreeAndNil(HTTP);</div><div class="code_line">end;</div><div class="code_line">&nbsp;</div><div class="code_line">procedure TDownloader.EndDown;</div><div class="code_line">begin</div><div class="code_line">&nbsp;Form1.Image1.Picture.Assign(JPEG);</div><div class="code_line">end;</div></ol></div></div></div></div>]]></description>
        <author>faust777</author>
        <category>Delphi: Сетевое программирование</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=377305&amp;view=findpost&amp;p=3316721</guid>
        <pubDate>Sun, 26 May 2013 15:14:53 +0000</pubDate>
        <title>Скачать изображение</title>
        <link>https://forum.sources.ru/index.php?showtopic=377305&amp;view=findpost&amp;p=3316721</link>
        <description><![CDATA[Protector: Апдейт:<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">procedure TDownloader.Execute;</div><div class="code_line">var</div><div class="code_line">&nbsp;&nbsp;I:TidHTTP;</div><div class="code_line">&nbsp;&nbsp;S:TMemoryStream;</div><div class="code_line">&nbsp;&nbsp;JPEG: TJPEGImage;</div><div class="code_line">begin</div><div class="code_line">&nbsp;&nbsp;inherited;</div><div class="code_line">i:=TIdHTTP.Create(nil);</div><div class="code_line">S:=TMemoryStream.Create;</div><div class="code_line">JPEG:=TJPEGImage.Create;</div><div class="code_line">try</div><div class="code_line">try</div><div class="code_line">&nbsp;I.Get(URL,S);</div><div class="code_line">except</div><div class="code_line">end;</div><div class="code_line">&nbsp;&nbsp;S.Position:=0;</div><div class="code_line">&nbsp;&nbsp;Jpeg.LoadFromStream(S);</div><div class="code_line">try</div><div class="code_line">Image.Picture.Assign(Jpeg);</div><div class="code_line">except</div><div class="code_line">end;</div><div class="code_line">finally</div><div class="code_line">&nbsp;&nbsp;i.Free;</div><div class="code_line">&nbsp;&nbsp;S.Free;</div><div class="code_line">&nbsp;&nbsp;JPeg.Free;</div><div class="code_line">end;</div><div class="code_line">end;</div></ol></div></div></div></div><br>
<br>
А в чем причина утечки памяти?]]></description>
        <author>Protector</author>
        <category>Delphi: Сетевое программирование</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=377305&amp;view=findpost&amp;p=3316719</guid>
        <pubDate>Sun, 26 May 2013 15:08:20 +0000</pubDate>
        <title>Скачать изображение</title>
        <link>https://forum.sources.ru/index.php?showtopic=377305&amp;view=findpost&amp;p=3316719</link>
        <description><![CDATA[MBo: Всё не смотрел, но на будущее не помешает подумать, чему равно SizeOf(S)?  (TMemoryStream)<br>
<br>
И что должна делать волшебная строка?<br>
<strong class='tag-b'>S</strong>.Write(Pointer(<strong class='tag-b'>S</strong>)^, SizeOf(S));<br>
<br>
для чего @Image&lt;&gt;nil ?]]></description>
        <author>MBo</author>
        <category>Delphi: Сетевое программирование</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=377305&amp;view=findpost&amp;p=3316714</guid>
        <pubDate>Sun, 26 May 2013 14:40:54 +0000</pubDate>
        <title>Скачать изображение</title>
        <link>https://forum.sources.ru/index.php?showtopic=377305&amp;view=findpost&amp;p=3316714</link>
        <description><![CDATA[Protector: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=377305&view=findpost&p=3316529'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>Pavia &#064; <time class="tag-quote__quoted-time" datetime="2013-05-25T14:40:21+00:00">25.05.13, 14:40</time></span><div class='quote '>PS. Есть предположение что и загрузка сделана с ошибкой странно что работает.</div></div><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">procedure TDownloader.Load;</div><div class="code_line">var</div><div class="code_line">&nbsp;&nbsp;I:TidHTTP;</div><div class="code_line">&nbsp;&nbsp;S:TMemoryStream;</div><div class="code_line">&nbsp;&nbsp;JPEG: TJPEGImage;</div><div class="code_line">begin</div><div class="code_line">i:=TIdHTTP.Create(nil);</div><div class="code_line">S:=TMemoryStream.Create;</div><div class="code_line">JPEG:=TJPEGImage.Create;</div><div class="code_line">try</div><div class="code_line">try</div><div class="code_line">&nbsp;I.Get(URL,S);</div><div class="code_line">except</div><div class="code_line">end;</div><div class="code_line">&nbsp;&nbsp;S.Write(Pointer(S)^, SizeOf(S));</div><div class="code_line">&nbsp;&nbsp;S.Position:=0;</div><div class="code_line">&nbsp;&nbsp;Jpeg.LoadFromStream(S);</div><div class="code_line">try</div><div class="code_line">if Assigned(Image)and(@Image&#60;&#62;nil)and(not Self.Terminated) then</div><div class="code_line">begin</div><div class="code_line">Image.Picture.Assign(Jpeg);</div><div class="code_line">end;</div><div class="code_line">except</div><div class="code_line">end;</div><div class="code_line">finally</div><div class="code_line">&nbsp;&nbsp;i.Free;</div><div class="code_line">&nbsp;&nbsp;S.Free;</div><div class="code_line">&nbsp;&nbsp;JPeg.Free;</div><div class="code_line">end;</div><div class="code_line">end;</div></ol></div></div></div></div> <br>
<br>
<span class="tag-color tag-color-named" data-value="gray" style="color: gray"><span class='tag-size' data-value='7' style='font-size:7pt;'>Добавлено <time class="tag-mergetime" datetime="2013-05-26T15:05:50+00:00">26.05.13, 15:05</time></span></span><br>
<strong class='tag-b'>MBo</strong>, Каким образом корректно обработать ситуацию ,когда поток еще грузит картинку ,а юзер завершает приложение?<br>
У меня такая последовательность действий вызывает AV и Еврика показывает утечку памяти (i:=TIdHTTP.Create(nil); - здесь ).]]></description>
        <author>Protector</author>
        <category>Delphi: Сетевое программирование</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=377305&amp;view=findpost&amp;p=3316706</guid>
        <pubDate>Sun, 26 May 2013 13:47:37 +0000</pubDate>
        <title>Скачать изображение</title>
        <link>https://forum.sources.ru/index.php?showtopic=377305&amp;view=findpost&amp;p=3316706</link>
        <description><![CDATA[MBo: <strong class='tag-b'>Protector</strong><br>
чтобы развеять сомнения faust777, покажи, откуда вызывается метод Load]]></description>
        <author>MBo</author>
        <category>Delphi: Сетевое программирование</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=377305&amp;view=findpost&amp;p=3316701</guid>
        <pubDate>Sun, 26 May 2013 13:04:05 +0000</pubDate>
        <title>Скачать изображение</title>
        <link>https://forum.sources.ru/index.php?showtopic=377305&amp;view=findpost&amp;p=3316701</link>
        <description><![CDATA[Protector: <strong class='tag-b'>faust777</strong>,<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;&nbsp;TDownloader = class(TThread)</div></ol></div></div></div></div>]]></description>
        <author>Protector</author>
        <category>Delphi: Сетевое программирование</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=377305&amp;view=findpost&amp;p=3316695</guid>
        <pubDate>Sun, 26 May 2013 12:44:50 +0000</pubDate>
        <title>Скачать изображение</title>
        <link>https://forum.sources.ru/index.php?showtopic=377305&amp;view=findpost&amp;p=3316695</link>
        <description><![CDATA[faust777: Нужно во главе потока грузить.. <strong class='tag-b'>Execute;</strong> а не в отдельных его процедурках типа <em class='tag-i'>.Load;</em>....<br>
тогда ни чего не будет тормозить..]]></description>
        <author>faust777</author>
        <category>Delphi: Сетевое программирование</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=377305&amp;view=findpost&amp;p=3316529</guid>
        <pubDate>Sat, 25 May 2013 14:40:21 +0000</pubDate>
        <title>Скачать изображение</title>
        <link>https://forum.sources.ru/index.php?showtopic=377305&amp;view=findpost&amp;p=3316529</link>
        <description><![CDATA[Pavia: 1) Что-бы загрузка не тормозила перерисовку, перерисовка должна быть отделена от загрузки.<br>
Подсказка хранить картинку надо в TBitmap;<br>
2) Что-бы загрузка не тор мазила не надо каждый раз устанавливать TCP и HTTP соединения. Держи их открытыми. Тот же принцип отдели загрузку от создания соединения. <br>
<br>
<span class="tag-color tag-color-named" data-value="gray" style="color: gray"><span class='tag-size' data-value='7' style='font-size:7pt;'>Добавлено <time class="tag-mergetime" datetime="2013-05-25T14:42:07+00:00">25.05.13, 14:42</time></span></span><br>
PS. Есть предположение что и загрузка сделана с ошибкой странно что работает.]]></description>
        <author>Pavia</author>
        <category>Delphi: Сетевое программирование</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=377305&amp;view=findpost&amp;p=3316525</guid>
        <pubDate>Sat, 25 May 2013 14:21:08 +0000</pubDate>
        <title>Скачать изображение</title>
        <link>https://forum.sources.ru/index.php?showtopic=377305&amp;view=findpost&amp;p=3316525</link>
        <description><![CDATA[Protector: Нужно скачать изображение по УРЛ и передать скаченную матрицу в TImage.<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">procedure TDownloader.Load;</div><div class="code_line">var</div><div class="code_line">&nbsp;&nbsp;I:TidHTTP;</div><div class="code_line">&nbsp;&nbsp;S:TMemoryStream;</div><div class="code_line">&nbsp;&nbsp;JPEG: TJPEGImage;</div><div class="code_line">begin</div><div class="code_line">&nbsp;&nbsp;i:=TIdHTTP.Create(nil);</div><div class="code_line">&nbsp;&nbsp;S:=TMemoryStream.Create;</div><div class="code_line">&nbsp;&nbsp;JPEG:=TJPEGImage.Create;</div><div class="code_line">try</div><div class="code_line">&nbsp;&nbsp;I.Get(URL,S);</div><div class="code_line">&nbsp;&nbsp;S.Position:=0;</div><div class="code_line">&nbsp;&nbsp;Jpeg.LoadFromStream(S);</div><div class="code_line">&nbsp;&nbsp;Image.Picture.Assign(JPeg);</div><div class="code_line">finally</div><div class="code_line">&nbsp;&nbsp;i.Free;</div><div class="code_line">&nbsp;&nbsp;S.Free;</div><div class="code_line">&nbsp;&nbsp;JPeg.Free;</div><div class="code_line">end;</div><div class="code_line">end;</div></ol></div></div></div></div><br>
Но даже в потоке ,такой код тормозит перерисовку всей формы.Как быть?]]></description>
        <author>Protector</author>
        <category>Delphi: Сетевое программирование</category>
      </item>
	
      </channel>
      </rss>
	