<?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=413831&amp;view=findpost&amp;p=3784205</guid>
        <pubDate>Fri, 30 Nov 2018 07:47:23 +0000</pubDate>
        <title>InternetOpenUrl работает с HTTP, но не работает с HTTPS</title>
        <link>https://forum.sources.ru/index.php?showtopic=413831&amp;view=findpost&amp;p=3784205</link>
        <description><![CDATA[Fr0sT: Дык. После хартблидов все начали версии ssl наращивать и старые убирать. Учитывая повсеместный переход на https, скоро без сторонних программ с XP вообще никуда не выйдешь]]></description>
        <author>Fr0sT</author>
        <category>Delphi: Сетевое программирование</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=413831&amp;view=findpost&amp;p=3784061</guid>
        <pubDate>Thu, 29 Nov 2018 09:00:49 +0000</pubDate>
        <title>InternetOpenUrl работает с HTTP, но не работает с HTTPS</title>
        <link>https://forum.sources.ru/index.php?showtopic=413831&amp;view=findpost&amp;p=3784061</link>
        <description><![CDATA[Nik36: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=413831&view=findpost&p=3784051'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>^D^ima &#064; <time class="tag-quote__quoted-time" datetime="2018-11-29T08:23:09+00:00">29.11.18, 08:23</time></span><div class='quote '>попробуй libeay32.dll положить в папку с файлом</div></div><br>
Спасибо, но лежит такой файл. Через <strong class='tag-b'>TIdHTTP</strong> с сайтом нормально обмен идет информацией, видимо придётся на него переделывать и загрузку файлов.<br>
<br>
Оказалось что сервер не настроен на работу с Windows XP + IE8. <a class='tag-url' href='https://www.ssllabs.com/ssltest/analyze.html' target='_blank'>https://www.ssllabs.com/ssltest/analyze.html</a> показал только для этой пары: <em class='tag-i'>Server sent fatal alert: handshake_failure</em>, с остальными браузерами и системами всё в порядке. Открыл IE8 (наверное впервые за 15 лет) и в нём действительно сайт и файлы с него не грузятся.]]></description>
        <author>Nik36</author>
        <category>Delphi: Сетевое программирование</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=413831&amp;view=findpost&amp;p=3784051</guid>
        <pubDate>Thu, 29 Nov 2018 08:23:09 +0000</pubDate>
        <title>InternetOpenUrl работает с HTTP, но не работает с HTTPS</title>
        <link>https://forum.sources.ru/index.php?showtopic=413831&amp;view=findpost&amp;p=3784051</link>
        <description><![CDATA[^D^ima: попробуй libeay32.dll положить в папку с файлом]]></description>
        <author>^D^ima</author>
        <category>Delphi: Сетевое программирование</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=413831&amp;view=findpost&amp;p=3783964</guid>
        <pubDate>Wed, 28 Nov 2018 14:07:27 +0000</pubDate>
        <title>InternetOpenUrl работает с HTTP, но не работает с HTTPS</title>
        <link>https://forum.sources.ru/index.php?showtopic=413831&amp;view=findpost&amp;p=3783964</link>
        <description><![CDATA[Nik36: Код функции прекрасно работает если ему подсунуть http-ссылку<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">DownloadFile(&#39;http://host.test/1.zip&#39;, &#39;C:.zip&#39;);</div></ol></div></div></div></div><script>preloadCodeButtons('1');</script><br>
<br>
Однако если использовать https-ссылку: <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">DownloadFile(&#39;https://host.test/1.zip&#39;, &#39;C:.zip&#39;);</div></ol></div></div></div></div><br>
<br>
то в третьей строчке функции <strong class='tag-b'>UrlHandle</strong> получает значение <strong class='tag-b'>nil</strong>. В описании к <strong class='tag-b'>InternetOpenUrl</strong> говорится что она работает с https. GetLastError даёт ошибку 12157 (<em class='tag-i'>The application experienced an internal error loading the SSL libraries.</em>). Какого-то параметра не хватает или чего более? <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">function tFormUpdate.DownloadFile(const Url: string; const FileName : string): Boolean;</div><div class="code_line">var</div><div class="code_line">&nbsp;&nbsp;NetHandle: HINTERNET;</div><div class="code_line">&nbsp;&nbsp;UrlHandle: HINTERNET;</div><div class="code_line">&nbsp;&nbsp;Buffer: array[0..1024] of char;</div><div class="code_line">&nbsp;&nbsp;BytesRead: cardinal;</div><div class="code_line">&nbsp;&nbsp;f : File;</div><div class="code_line">begin</div><div class="code_line">&nbsp;&nbsp;NetHandle := InternetOpen(PChar(ExtractFileName(Application.ExeName)), INTERNET_OPEN_TYPE_PRECONFIG, nil, nil, 0);</div><div class="code_line">&nbsp;</div><div class="code_line">&nbsp;&nbsp;if Assigned(NetHandle) then begin</div><div class="code_line">&nbsp;&nbsp; &nbsp;UrlHandle := InternetOpenUrl(NetHandle, PChar(Url), nil, 0, INTERNET_FLAG_RELOAD , 0);</div><div class="code_line">&nbsp;</div><div class="code_line">&nbsp;&nbsp; &nbsp;if Assigned(UrlHandle) then begin</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp;AssignFile(f, FileName);</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp;Rewrite(F, 1);</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp;FillChar(Buffer, SizeOf(Buffer), 0);</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp;repeat</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;FillChar(Buffer, SizeOf(Buffer), 0);</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;InternetReadFile(UrlHandle, @Buffer, SizeOf(Buffer), BytesRead);</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;pbUpload.Position := pbUpload.Position + Integer(BytesRead);</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;Application.ProcessMessages;</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;BlockWrite(f, Buffer, BytesRead);</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp;until BytesRead = 0;</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp;InternetCloseHandle(UrlHandle);</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp;CloseFile(F);</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp;REsult := true;</div><div class="code_line">&nbsp;&nbsp; &nbsp;end else begin</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp;Result := false;</div><div class="code_line">&nbsp;&nbsp; &nbsp;end;</div><div class="code_line">&nbsp;&nbsp; &nbsp;InternetCloseHandle(NetHandle);</div><div class="code_line">&nbsp;&nbsp;end else</div><div class="code_line">&nbsp;&nbsp; &nbsp;result := false;</div><div class="code_line">end;</div></ol></div></div></div></div>]]></description>
        <author>Nik36</author>
        <category>Delphi: Сетевое программирование</category>
      </item>
	
      </channel>
      </rss>
	