<?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=279131&amp;view=findpost&amp;p=2335215</guid>
        <pubDate>Wed, 12 Aug 2009 16:20:07 +0000</pubDate>
        <title>&amp;quot;Stream read error&amp;quot;</title>
        <link>https://forum.sources.ru/index.php?showtopic=279131&amp;view=findpost&amp;p=2335215</link>
        <description><![CDATA[Profi: <strong class='tag-b'>Alexander N</strong>, просто не смотрел реализацию второй функции.]]></description>
        <author>Profi</author>
        <category>Delphi: Общие вопросы</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=279131&amp;view=findpost&amp;p=2335089</guid>
        <pubDate>Wed, 12 Aug 2009 13:16:31 +0000</pubDate>
        <title>&amp;quot;Stream read error&amp;quot;</title>
        <link>https://forum.sources.ru/index.php?showtopic=279131&amp;view=findpost&amp;p=2335089</link>
        <description><![CDATA[Alexander N: Спасибо&#33;]]></description>
        <author>Alexander N</author>
        <category>Delphi: Общие вопросы</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=279131&amp;view=findpost&amp;p=2335085</guid>
        <pubDate>Wed, 12 Aug 2009 13:14:37 +0000</pubDate>
        <title>&amp;quot;Stream read error&amp;quot;</title>
        <link>https://forum.sources.ru/index.php?showtopic=279131&amp;view=findpost&amp;p=2335085</link>
        <description><![CDATA[leo: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=279131&view=findpost&p=2335063'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>Alexander N &#064; <time class="tag-quote__quoted-time" datetime="2009-08-12T12:46:53+00:00">12.08.09, 12:46</time></span><div class='quote '>Оффтопик, но где эту галку искать. например в d7? </div></div><br>
Project -&gt; Options -&gt; Compiler -&gt; SyntaxOptions -&gt; Complete boolean eval - по умолчанию выключена, т.е. булевские выражения считаются не полностью, а слево-направо пока не станет ясен результат]]></description>
        <author>leo</author>
        <category>Delphi: Общие вопросы</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=279131&amp;view=findpost&amp;p=2335063</guid>
        <pubDate>Wed, 12 Aug 2009 12:46:53 +0000</pubDate>
        <title>&amp;quot;Stream read error&amp;quot;</title>
        <link>https://forum.sources.ru/index.php?showtopic=279131&amp;view=findpost&amp;p=2335063</link>
        <description><![CDATA[Alexander N: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=279131&view=findpost&p=2335040'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>leo &#064; <time class="tag-quote__quoted-time" datetime="2009-08-12T12:22:00+00:00">12.08.09, 12:22</time></span><div class='quote '>галка Compleate boolean eval выключена</div></div>Оффтопик, но где эту галку искать. например в d7? <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="2009-08-12T13:06:44+00:00">12.08.09, 13:06</time></span></span><br>
<strong class='tag-b'>MetalFan</strong>, спасибо, с Вашим исправлением прогнал прогу по диску, она больше не слетает(пока ;) ).<br>
<div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=279131&view=findpost&p=2335010'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>Profi &#064; <time class="tag-quote__quoted-time" datetime="2009-08-12T12:00:20+00:00">12.08.09, 12:00</time></span><div class='quote '>if f1.Size = f2.Size then<br>
begin<br>
for i:=0 to f1.Size - 1 do<br>
  begin<br>
    f1.ReadBuffer(Buf1,1);<br>
    f2.ReadBuffer(Buf2,1);<br>
    if Buf1&lt;&gt;Buf2 then<br>
    begin<br>
      result:=false;<br>
      exit<br>
    end<br>
  end;<br>
end else<br>
  result := false;</div></div><br>
<strong class='tag-b'>Profi</strong>, зчем сравнивать файлы по размеру, если это уже делается до вызова ф-ции, и совпаадение размеров - условие вызова это ф-ции?<br>
<strong class='tag-b'>leo</strong>, спасибо за ф-цию сравнения, пока не успел попробовать]]></description>
        <author>Alexander N</author>
        <category>Delphi: Общие вопросы</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=279131&amp;view=findpost&amp;p=2335040</guid>
        <pubDate>Wed, 12 Aug 2009 12:22:00 +0000</pubDate>
        <title>&amp;quot;Stream read error&amp;quot;</title>
        <link>https://forum.sources.ru/index.php?showtopic=279131&amp;view=findpost&amp;p=2335040</link>
        <description><![CDATA[leo: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=279131&view=findpost&p=2335034'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>Alexander N &#064; <time class="tag-quote__quoted-time" datetime="2009-08-12T12:16:06+00:00">12.08.09, 12:16</time></span><div class='quote '>А разве нельзя<br>
if f1.Size&lt;&gt;f2.Size</div></div><br>
Можно, только это &quot;не оптимально&quot; ;), т.к. при при чтении св-ва f1.Size вызывается ф-я АПИ GetFileSize - меня от этих излишеств &quot;коробит&quot; :) <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="2009-08-12T12:26:17+00:00">12.08.09, 12:26</time></span></span><br>
<div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=279131&view=findpost&p=2335034'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>Alexander N &#064; <time class="tag-quote__quoted-time" datetime="2009-08-12T12:16:06+00:00">12.08.09, 12:16</time></span><div class='quote '>И вложенные условия нужны для того, чтобы если первое услови не выполняется, не вычислять последующие, т. к. прога должна работать быстро</div></div><br>
В дельфи и так по умолчанию стоит опция сокращенного вычисления булевских выражений (галка Compleate boolean eval выключена), поэтому как только в цепочке AND встречается false - дальнейшие вычисления прекращаются]]></description>
        <author>leo</author>
        <category>Delphi: Общие вопросы</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=279131&amp;view=findpost&amp;p=2335034</guid>
        <pubDate>Wed, 12 Aug 2009 12:16:06 +0000</pubDate>
        <title>&amp;quot;Stream read error&amp;quot;</title>
        <link>https://forum.sources.ru/index.php?showtopic=279131&amp;view=findpost&amp;p=2335034</link>
        <description><![CDATA[Alexander N: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=279131&view=findpost&p=2335017'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>leo &#064; <time class="tag-quote__quoted-time" datetime="2009-08-12T12:01:55+00:00">12.08.09, 12:01</time></span><div class='quote '>FSize:=f1.Size;<br>
if f2.Size &lt;&gt; FSize then Exit; //&#33;&#33;&#33; проверяем равенство размера</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">if f1.Size&#60;&#62;f2.Size</div></ol></div></div></div></div><script>preloadCodeButtons('1');</script>?<br>
<br>
И вложенные условия нужны для того, чтобы если первое услови не выполняется, не вычислять последующие, т. к. прога должна работать быстро.]]></description>
        <author>Alexander N</author>
        <category>Delphi: Общие вопросы</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=279131&amp;view=findpost&amp;p=2335033</guid>
        <pubDate>Wed, 12 Aug 2009 12:13:33 +0000</pubDate>
        <title>&amp;quot;Stream read error&amp;quot;</title>
        <link>https://forum.sources.ru/index.php?showtopic=279131&amp;view=findpost&amp;p=2335033</link>
        <description><![CDATA[leo: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=279131&view=findpost&p=2335032'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>Alexander N &#064; <time class="tag-quote__quoted-time" datetime="2009-08-12T12:11:28+00:00">12.08.09, 12:11</time></span><div class='quote '>Вроде в объявлении переменных таковой нет.leo, что вы имели в виду? </div></div><br>
Эх, на 3 сек. не успел исправить - это не нужно, от другого варианта затесалось...]]></description>
        <author>leo</author>
        <category>Delphi: Общие вопросы</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=279131&amp;view=findpost&amp;p=2335032</guid>
        <pubDate>Wed, 12 Aug 2009 12:11:28 +0000</pubDate>
        <title>&amp;quot;Stream read error&amp;quot;</title>
        <link>https://forum.sources.ru/index.php?showtopic=279131&amp;view=findpost&amp;p=2335032</link>
        <description><![CDATA[Alexander N: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=279131&view=findpost&p=2335017'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>leo &#064; <time class="tag-quote__quoted-time" datetime="2009-08-12T12:01:55+00:00">12.08.09, 12:01</time></span><div class='quote '>  RSize:=0;</div></div><br>
Вроде в объявлении переменных таковой нет.<strong class='tag-b'>leo</strong>, что вы имели в виду?]]></description>
        <author>Alexander N</author>
        <category>Delphi: Общие вопросы</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=279131&amp;view=findpost&amp;p=2335017</guid>
        <pubDate>Wed, 12 Aug 2009 12:01:55 +0000</pubDate>
        <title>&amp;quot;Stream read error&amp;quot;</title>
        <link>https://forum.sources.ru/index.php?showtopic=279131&amp;view=findpost&amp;p=2335017</link>
        <description><![CDATA[leo: Мда-а-а, читать файлы по 1 байту это супер :wacko:<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 CompFiles(const Name1,Name2:string):boolean;</div><div class="code_line">var</div><div class="code_line">&nbsp;&nbsp;FSize,BSize:integer;</div><div class="code_line">&nbsp;&nbsp;Buf1,Buf2:array[0..4095] of char;</div><div class="code_line">&nbsp;&nbsp;f1,f2:TFileStream;</div><div class="code_line">begin</div><div class="code_line">&nbsp;&nbsp;Result:=false;</div><div class="code_line">&nbsp;&nbsp;f1:=TFileStream.Create(Name1,fmOpenRead);</div><div class="code_line">&nbsp;&nbsp;f2:=nil;</div><div class="code_line">&nbsp;&nbsp;try</div><div class="code_line">&nbsp;&nbsp; &nbsp;f2:=TFileStream.Create(Name2,fmOpenRead);</div><div class="code_line">&nbsp;&nbsp; &nbsp;FSize:=f1.Size;</div><div class="code_line">&nbsp;&nbsp; &nbsp;if f2.Size &#60;&#62; FSize then Exit; //!!! проверяем равенство размера</div><div class="code_line">&nbsp;&nbsp; &nbsp;repeat</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp;BSize:=FSize;</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp;if BSize &#62; SizeOf(Buf1) then BSize:=SizeOf(Buf1);</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp;f1.ReadBuffer(Buf1,BSize);</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp;f2.ReadBuffer(Buf2,BSize);</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp;if not CompareMem(Buf1,Buf2,BSize) then Exit;</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp;dec(FSize,BSize);</div><div class="code_line">&nbsp;&nbsp; &nbsp;until FSize &#60;= 0;</div><div class="code_line">&nbsp;&nbsp; &nbsp;Result:=true;</div><div class="code_line">&nbsp;&nbsp;finally</div><div class="code_line">&nbsp;&nbsp; &nbsp;f1.Free;</div><div class="code_line">&nbsp;&nbsp; &nbsp;f2.Free;</div><div class="code_line">&nbsp;&nbsp;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="2009-08-12T12:09:28+00:00">12.08.09, 12:09</time></span></span><br>
Да и циклы по FileTable ужасно сделаны - нафига гонять второй цикл от 0, когда достаточно от i+1 ?&#33; И куча вложенных if-ов никчему, т.к. можно все в одну строчку написать<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">for i:=0 to Length(FileTable)-1 do</div><div class="code_line">&nbsp;&nbsp;if FileTable[i].FileName &#60;&#62; &#39;&#39; then</div><div class="code_line">&nbsp;&nbsp;begin</div><div class="code_line">&nbsp;&nbsp; &nbsp;ItemClosed:=true;</div><div class="code_line">&nbsp;&nbsp; &nbsp;for j:=i+1 to Length(FileTable)-1 do</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp;if (FileTable[j].FileName &#60;&#62; &#39;&#39;) and (FileTable[i].Size = FileTable[j].Size) and</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; CompFiles(FileTable[i].FileName,FileTable[j].FileName) then</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp;begin</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; ...</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp;end;</div><div class="code_line">&nbsp;&nbsp;end;</div></ol></div></div></div></div>]]></description>
        <author>leo</author>
        <category>Delphi: Общие вопросы</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=279131&amp;view=findpost&amp;p=2335010</guid>
        <pubDate>Wed, 12 Aug 2009 12:00:20 +0000</pubDate>
        <title>&amp;quot;Stream read error&amp;quot;</title>
        <link>https://forum.sources.ru/index.php?showtopic=279131&amp;view=findpost&amp;p=2335010</link>
        <description><![CDATA[Profi: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=279131&view=findpost&p=2334992'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>Alexander N &#064; <time class="tag-quote__quoted-time" datetime="2009-08-12T11:38:05+00:00">12.08.09, 11:38</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">for i:=0 to f1.Size do</div><div class="code_line">&nbsp;&nbsp;begin</div><div class="code_line">&nbsp;&nbsp; &nbsp;f1.ReadBuffer(Buf1,1);</div><div class="code_line">&nbsp;&nbsp; &nbsp;f2.ReadBuffer(Buf2,1);</div><div class="code_line">&nbsp;&nbsp; &nbsp;if Buf1&#60;&#62;Buf2 then</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp;begin</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;result:=false;</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;exit</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp;end</div><div class="code_line">&nbsp;&nbsp;end;</div></ol></div></div></div></div></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">if f1.Size = f2.Size then</div><div class="code_line">begin</div><div class="code_line">for i:=0 to f1.Size - 1 do</div><div class="code_line">&nbsp;&nbsp;begin</div><div class="code_line">&nbsp;&nbsp; &nbsp;f1.ReadBuffer(Buf1,1);</div><div class="code_line">&nbsp;&nbsp; &nbsp;f2.ReadBuffer(Buf2,1);</div><div class="code_line">&nbsp;&nbsp; &nbsp;if Buf1&#60;&#62;Buf2 then</div><div class="code_line">&nbsp;&nbsp; &nbsp;begin</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp;result:=false;</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp;exit</div><div class="code_line">&nbsp;&nbsp; &nbsp;end</div><div class="code_line">&nbsp;&nbsp;end;</div><div class="code_line">end else</div><div class="code_line">&nbsp;&nbsp;result := false;</div></ol></div></div></div></div>]]></description>
        <author>Profi</author>
        <category>Delphi: Общие вопросы</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=279131&amp;view=findpost&amp;p=2334994</guid>
        <pubDate>Wed, 12 Aug 2009 11:43:45 +0000</pubDate>
        <title>&amp;quot;Stream read error&amp;quot;</title>
        <link>https://forum.sources.ru/index.php?showtopic=279131&amp;view=findpost&amp;p=2334994</link>
        <description><![CDATA[MetalFan: возможно не совпадают размеры файлов. и если уж в цикле от 0, то, имхо до Size-1.<br>так же возможно имеет смысл использовать не ReadBuffer, а Read, и проверять, что он возвращает корректно прочитанный размер. либо ловить и обрабатывать исключение с пом try..except]]></description>
        <author>MetalFan</author>
        <category>Delphi: Общие вопросы</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=279131&amp;view=findpost&amp;p=2334992</guid>
        <pubDate>Wed, 12 Aug 2009 11:38:05 +0000</pubDate>
        <title>&amp;quot;Stream read error&amp;quot;</title>
        <link>https://forum.sources.ru/index.php?showtopic=279131&amp;view=findpost&amp;p=2334992</link>
        <description><![CDATA[Alexander N: Привет всем&#33;<br>
Пишу программу для поиска дублей на диске.<br>
В ф-ции, приведенной ниже, вылетет ошибка на вызове другой ф-ции.<br>
Ошибка &quot;Stream read error&quot;, причем вылетает не срузу, первый раз где-то на 10 вызове(примерно), во второй на 36-ом, а в 3-й - на 24-ом.<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;</div><div class="code_line">TFileRecord=record</div><div class="code_line">FileName:string[255];</div><div class="code_line">Size:integer</div><div class="code_line">end;</div><div class="code_line">&nbsp;</div><div class="code_line">TFileRecordHash=record</div><div class="code_line">FileName:string[255];</div><div class="code_line">Size:integer;</div><div class="code_line">Hash:string[16];</div><div class="code_line">end;</div><div class="code_line">&nbsp;</div><div class="code_line">var</div><div class="code_line">FileTable:array of TFileRecord;</div><div class="code_line">FileTableHash:array of TFileRecordHash; &nbsp;//пока не используется</div><div class="code_line">Duplicates:array of array of TFileRecord;</div><div class="code_line">RemoveList:array of char;</div><div class="code_line">Canceled:boolean;</div><div class="code_line">&nbsp;</div><div class="code_line">........................</div><div class="code_line">&nbsp;</div><div class="code_line">procedure FindDuplicates;</div><div class="code_line">var</div><div class="code_line">i,j:integer;</div><div class="code_line">ItemClosed:boolean;</div><div class="code_line">&nbsp;</div><div class="code_line">//////////////////////////////////</div><div class="code_line">////Побйтно сравнивает два файла//</div><div class="code_line">//////////////////////////////////</div><div class="code_line">function CompFiles(Name1,Name2:string):boolean;</div><div class="code_line">var</div><div class="code_line">i:integer;</div><div class="code_line">Buf1,Buf2:byte;</div><div class="code_line">f1,f2:TFileStream;</div><div class="code_line">begin</div><div class="code_line">try</div><div class="code_line">f1:=TFileStream.Create(Name1,fmOpenRead);</div><div class="code_line">f2:=TFileStream.Create(Name2,fmOpenRead);</div><div class="code_line">for i:=0 to f1.Size do</div><div class="code_line">&nbsp;&nbsp;begin</div><div class="code_line">&nbsp;&nbsp; &nbsp;f1.ReadBuffer(Buf1,1);</div><div class="code_line">&nbsp;&nbsp; &nbsp;f2.ReadBuffer(Buf2,1);</div><div class="code_line">&nbsp;&nbsp; &nbsp;if Buf1&#60;&#62;Buf2 then</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp;begin</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;result:=false;</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;exit</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp;end</div><div class="code_line">&nbsp;&nbsp;end;</div><div class="code_line">result:=true;</div><div class="code_line">finally</div><div class="code_line">f1.Free;</div><div class="code_line">f2.Free;</div><div class="code_line">end</div><div class="code_line">end;</div><div class="code_line">&nbsp;</div><div class="code_line">begin</div><div class="code_line">try</div><div class="code_line">for i:=0 to Length(FileTable)-1 do</div><div class="code_line">&nbsp;&nbsp;if Length(FileTable[i].FileName)&#60;&#62;0 then</div><div class="code_line">&nbsp;&nbsp; &nbsp;begin</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp;ItemClosed:=true;</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp;for j:=0 to Length(FileTable)-1 do</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;if Length(FileTable[j].FileName)&#60;&#62;0 then</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;if i&#60;&#62;j then</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;if FileTable[i].Size=FileTable[j].Size then</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;if CompFiles(FileTable[i].FileName,FileTable[j].FileName) then &nbsp;//Здесь ошибка</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;begin</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;if ItemClosed then</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;begin</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;SetLength(Duplicates,Length(Duplicates)+1);</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;SetLength(Duplicates[Length(Duplicates)-1],{Length(Duplicates[Length(Duplicates)-1])|+}1);</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;Duplicates[Length(Duplicates)-1,0]:=FileTable[i];</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;ItemClosed:=false</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;end;</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;SetLength(Duplicates[Length(Duplicates)-1],Length(Duplicates[Length(Duplicates)-1])+1);</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;Duplicates[Length(Duplicates)-1,Length(Duplicates[Length(Duplicates)-1])-1]:=FileTable[j];</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;SetLength(FileTable[j].FileName,0)</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;end;</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp;SetLength(FileTable[i].FileName,0)</div><div class="code_line">&nbsp;&nbsp; &nbsp;end;</div><div class="code_line">finally</div><div class="code_line">SetLength(FileTable,0)</div><div class="code_line">end</div><div class="code_line">end;</div></ol></div></div></div></div>]]></description>
        <author>Alexander N</author>
        <category>Delphi: Общие вопросы</category>
      </item>
	
      </channel>
      </rss>
	