<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
	<channel>
		<title><![CDATA[Серый форум &mdash; AHK: Отключить #Warn для части скрипта]]></title>
		<link>https://forum.script-coding.com/viewtopic.php?id=12316</link>
		<atom:link href="https://forum.script-coding.com/extern.php?action=feed&amp;tid=12316&amp;type=rss" rel="self" type="application/rss+xml" />
		<description><![CDATA[Недавние сообщения в теме «AHK: Отключить #Warn для части скрипта».]]></description>
		<lastBuildDate>Sun, 15 Jan 2017 13:59:44 +0000</lastBuildDate>
		<generator>PunBB</generator>
		<item>
			<title><![CDATA[Re: AHK: Отключить #Warn для части скрипта]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=111086#p111086</link>
			<description><![CDATA[<p>Во! Сработало! Спасибо большое, очень помогли!</p>]]></description>
			<author><![CDATA[null@example.com (belyankin12)]]></author>
			<pubDate>Sun, 15 Jan 2017 13:59:44 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=111086#p111086</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: Отключить #Warn для части скрипта]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=111083#p111083</link>
			<description><![CDATA[<p>Ну вот и присвойте им явно пустое значение (которое имеют все неинициализированные переменные).<br />С тем же успехом можно просто убрать переменные из вызова функций, оставив запятую.<br />Что может это сломать?</p>]]></description>
			<author><![CDATA[null@example.com (stealzy)]]></author>
			<pubDate>Sun, 15 Jan 2017 13:51:08 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=111083#p111083</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: Отключить #Warn для части скрипта]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=111064#p111064</link>
			<description><![CDATA[<p><strong>stealzy</strong>, этот код написал не я. Я прекрасно понимаю что от меня требует #warn в данном случае, он ругается на переменные, которые нигде не были заданы. Все бы хорошо, если бы я сам написал код, что проверяет MD5 и понимал его, а так извините, может что-то сломаю. Исправлять ошибку в коде необязательно: скрипт итак работает отлично, мне просто не нужны эти диалоговые окна в этой части скрипта.</p><p>А warn я использую, чтобы исправлять ошибки в других функциях этого скрипта, которые я писал лично и в которых я понимаю принцип.</p>]]></description>
			<author><![CDATA[null@example.com (belyankin12)]]></author>
			<pubDate>Sun, 15 Jan 2017 11:03:03 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=111064#p111064</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: Отключить #Warn для части скрипта]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=111060#p111060</link>
			<description><![CDATA[<p>У меня к вам встречный вопрос: если вы не понимаете о чем вас предупреждает интерпретатор, зачем вы используете #Warn?<br />Если понимаете, то он черным по белому пишет, что ему не нравится и как это исправить.</p><p>Ну ладно, пусть вы дуб дубом в английском, но какая-то пчела вас укусила использовать #Warn. Про google translate не слыхали?</p>]]></description>
			<author><![CDATA[null@example.com (stealzy)]]></author>
			<pubDate>Sun, 15 Jan 2017 10:39:55 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=111060#p111060</guid>
		</item>
		<item>
			<title><![CDATA[AHK: Отключить #Warn для части скрипта]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=111057#p111057</link>
			<description><![CDATA[<p>Здравствуйте, имеется следующий код, что определяет собственный MD5:<br /></p><div class="codebox"><pre><code>HashFile(filename, hashType = &quot;MD5&quot;)
{
   HASH_ALG := { MD2: CALG_MD2 := 32769
               , MD5: CALG_MD5 := 32771
               , SHA: CALG_SHA := 32772
               , SHA256: CALG_SHA_256 := 32780
               , SHA384: CALG_SHA_384 := 32781
               , SHA512: CALG_SHA_512 := 32782 }[hashType]
   if !f := FileOpen(filename, &quot;r&quot;)
      return
   f.pos := 0
   f.rawRead(data, f.length)
   return CalcAddrHash(&amp;data, f.length, HASH_ALG)
}

CalcAddrHash(addr, length, algid, byref hash = 0, byref hashlength = 0)
{
   static PROV_RSA_AES := 24, CRYPT_VERIFYCONTEXT := 0xF0000000, HP_HASHVAL := 0x0002
      
   if (DllCall(&quot;advapi32\CryptAcquireContext&quot;, PtrP, hProv, Ptr, 0, Ptr, 0, UInt, PROV_RSA_AES, UInt, CRYPT_VERIFYCONTEXT))
   {
      if (DllCall(&quot;advapi32\CryptCreateHash&quot;, Ptr, hProv, UInt, algid, UInt, 0, UInt, 0, &quot;Ptr*&quot;, hHash))
      {
         if (DllCall(&quot;advapi32\CryptHashData&quot;, Ptr, hHash, Ptr, addr, UInt, length, UInt, 0))
         {
            if (DllCall(&quot;advapi32\CryptGetHashParam&quot;, Ptr, hHash, UInt, HP_HASHVAL, Ptr, 0, UIntP, hashlength, UInt, 0))
            {
               VarSetCapacity(hash, hashlength, 0)
               if (DllCall(&quot;advapi32\CryptGetHashParam&quot;, Ptr, hHash, UInt, HP_HASHVAL, Ptr, &amp;hash, UIntP, hashlength, UInt, 0))
                  Loop % hashlength
                     hashstr .= Format( &quot;{:02X}&quot;, *(&amp;hash + A_Index - 1) )
            }
         }
         DllCall(&quot;advapi32\CryptDestroyHash&quot;, Ptr, hHash)
      }
      DllCall(&quot;advapi32\CryptReleaseContext&quot;, Ptr, hProv, UInt, 0)
   }
   return hashstr
}

Global MyMD5 := HashFile(A_ScriptFullPath)

msgbox, %MyMD5%
ExitApp
return</code></pre></div><p>Если прописать в любом месте скрипта #Warn, при запуске будет 3 ошибки переменных, но при этом скрипт полностью работает. Этот код я хочу включить в другой скрипт, в котором использование директивы #Warn обязательно. Вопрос: как отключить показ диалоговых окон с ошибкой только для этой части скрипта? Либо как исправить код, чтобы скрипт не ругался?</p>]]></description>
			<author><![CDATA[null@example.com (belyankin12)]]></author>
			<pubDate>Sun, 15 Jan 2017 09:17:16 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=111057#p111057</guid>
		</item>
	</channel>
</rss>
