<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
	<channel>
		<title><![CDATA[Серый форум &mdash; AHK: Функция вычисления CRC16]]></title>
		<link>https://forum.script-coding.com/viewtopic.php?id=9826</link>
		<atom:link href="https://forum.script-coding.com/extern.php?action=feed&amp;tid=9826&amp;type=rss" rel="self" type="application/rss+xml" />
		<description><![CDATA[Недавние сообщения в теме «AHK: Функция вычисления CRC16».]]></description>
		<lastBuildDate>Wed, 23 Jul 2014 14:44:45 +0000</lastBuildDate>
		<generator>PunBB</generator>
		<item>
			<title><![CDATA[Re: AHK: Функция вычисления CRC16]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=85047#p85047</link>
			<description><![CDATA[<p>Я об этом и писал в 1-ом посте... Но нигде не нашел кода для него.</p><p>Еще вот что нашел: <a href="http://softboard.ru/topic/34899-%D0%BF%D0%BE%D0%B4%D1%81%D0%BA%D0%B0%D0%B6%D0%B8%D1%82%D0%B5-%D0%B0%D0%BB%D0%B3%D0%BE%D1%80%D0%B8%D1%82%D0%BC-%D0%B2%D1%8B%D1%81%D1%87%D0%B8%D1%82%D1%8B%D0%B2%D0%B0%D0%BD%D0%B8%D1%8F-crc-%D0%B8-crc32/">http://softboard.ru/topic/34899-%D0%BF% … %B8-crc32/</a></p><p>Но это мне не понять...</p>]]></description>
			<author><![CDATA[null@example.com (Alectric)]]></author>
			<pubDate>Wed, 23 Jul 2014 14:44:45 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=85047#p85047</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: Функция вычисления CRC16]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=85046#p85046</link>
			<description><![CDATA[<div class="quotebox"><cite>Alectric пишет:</cite><blockquote><p>CRC32 = 0xA3830348</p></blockquote></div><p>В приведённом коде как раз этот вариант. А Вам, видимо, нужен был CRC16.</p>]]></description>
			<author><![CDATA[null@example.com (teadrinker)]]></author>
			<pubDate>Wed, 23 Jul 2014 14:42:56 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=85046#p85046</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: Функция вычисления CRC16]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=85045#p85045</link>
			<description><![CDATA[<p>Нашел такую информацию:<br /></p><div class="codebox"><pre><code>      Example input string: ABC
         CRC16              = 0x4521
         CRC16 (Modbus)     = 0x8550
         CRC16 (Sick)       = 0xC3C1
         CRC-CCITT (0x0000) = 0x3994
         CRC-CCITT (0xffff) = 0xF508
         CRC-CCITT (0x1d0f) = 0x2898
         CRC-CCITT (Kermit) = 0xE359
         CRC-DNP            = 0x5AD3
         CRC32              = 0xA3830348
</code></pre></div><p>Слишком много вариантов для 4-х символьной контрольной суммы.<br />Значит придется использовать другой путь для моей программы...</p><p>Спасибо за ответы.</p>]]></description>
			<author><![CDATA[null@example.com (Alectric)]]></author>
			<pubDate>Wed, 23 Jul 2014 14:39:41 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=85045#p85045</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: Функция вычисления CRC16]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=85043#p85043</link>
			<description><![CDATA[<div class="quotebox"><cite>Alectric пишет:</cite><blockquote><p>Контрольная сумма должна соответствовать его названию.</p></blockquote></div><p>Я не особо в теме, но судя по описанию <a href="http://source.winehq.org/WineAPI/RtlComputeCrc32.html">RtlComputeCrc32()</a> выходное значение будет зависеть от начального параметра <em>dwInitial</em>, так что каким-то конкретным в данном случае оно не может быть.</p>]]></description>
			<author><![CDATA[null@example.com (teadrinker)]]></author>
			<pubDate>Wed, 23 Jul 2014 14:24:15 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=85043#p85043</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: Функция вычисления CRC16]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=85040#p85040</link>
			<description><![CDATA[<p>Вот файл для примера.<br />Контрольная сумма должна соответствовать его названию.</p><p>А по этому коду она состоит из 8-и символов.</p><p>Файл в архиве, а не сам архив.</p>]]></description>
			<author><![CDATA[null@example.com (Alectric)]]></author>
			<pubDate>Wed, 23 Jul 2014 13:23:39 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=85040#p85040</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: Функция вычисления CRC16]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=85039#p85039</link>
			<description><![CDATA[<p>А в чём проблема? (Кроме того, что код только под 32 бита)</p>]]></description>
			<author><![CDATA[null@example.com (teadrinker)]]></author>
			<pubDate>Wed, 23 Jul 2014 13:22:10 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=85039#p85039</guid>
		</item>
		<item>
			<title><![CDATA[AHK: Функция вычисления CRC16]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=85038#p85038</link>
			<description><![CDATA[<p>Приветствую всех.</p><p>Есть ли у кого-нибудь код на AHK для определения контрольной суммы CRC16 (если я конечно не ошибаюсь, нужен код из 4-х символов на выходе вроде: 6FBD) для файлов?</p><p>Искал в интернете, на <a href="http://www.autohotkey.com">http://www.autohotkey.com</a>, и на нашем форуме - результат отрицательный.</p><p>Самое близкое из того что нашел:<br /></p><div class="codebox"><pre><code>FileCRC32( sFile=&quot;&quot;,cSz=4 ) { ; by SKAN www.autohotkey.com/community/viewtopic.php?t=64211
 cSz := (cSz&lt;0||cSz&gt;8) ? 2**22 : 2**(18+cSz), VarSetCapacity( Buffer,cSz,0 ) ; 10-Oct-2009
 hFil := DllCall( &quot;CreateFile&quot;, Str,sFile,UInt,0x80000000, Int,3,Int,0,Int,3,Int,0,Int,0 )
 IfLess,hFil,1, Return,hFil
 hMod := DllCall( &quot;LoadLibrary&quot;, Str,&quot;ntdll.dll&quot; ), CRC32 := 0
 DllCall( &quot;GetFileSizeEx&quot;, UInt,hFil, UInt,&amp;Buffer ),    fSz := NumGet( Buffer,0,&quot;Int64&quot; )
 Loop % ( fSz//cSz + !!Mod( fSz,cSz ) )
   DllCall( &quot;ReadFile&quot;, UInt,hFil, UInt,&amp;Buffer, UInt,cSz, UIntP,Bytes, UInt,0 )
 , CRC32 := DllCall( &quot;NTDLL\RtlComputeCrc32&quot;, UInt,CRC32, UInt,&amp;Buffer, UInt,Bytes, UInt )
 DllCall( &quot;CloseHandle&quot;, UInt,hFil )
 SetFormat, Integer, % SubStr( ( A_FI := A_FormatInteger ) &quot;H&quot;, 0 )
 CRC32 := SubStr( CRC32 + 0x1000000000, -7 ), DllCall( &quot;CharUpper&quot;, Str,CRC32 )
 SetFormat, Integer, %A_FI%
Return CRC32, DllCall( &quot;FreeLibrary&quot;, UInt,hMod )
}
</code></pre></div><p>Выдает сумму состоящую из 8-и символов.</p>]]></description>
			<author><![CDATA[null@example.com (Alectric)]]></author>
			<pubDate>Wed, 23 Jul 2014 13:10:28 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=85038#p85038</guid>
		</item>
	</channel>
</rss>
