<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
	<title type="html"><![CDATA[Серый форум &mdash; AHK: Убрать всплывающую ошибку у файла AutoHotkey.exe]]></title>
	<link rel="self" href="https://forum.script-coding.com/extern.php?action=feed&amp;tid=17285&amp;type=atom" />
	<updated>2022-08-31T16:50:24Z</updated>
	<generator>PunBB</generator>
	<id>https://forum.script-coding.com/viewtopic.php?id=17285</id>
		<entry>
			<title type="html"><![CDATA[Re: AHK: Убрать всплывающую ошибку у файла AutoHotkey.exe]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=154591#p154591" />
			<content type="html"><![CDATA[<p>Что то с памятью моей стало...<br />Всё получилось, прилепил BASE64.</p>]]></content>
			<author>
				<name><![CDATA[serzh82saratov]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=27879</uri>
			</author>
			<updated>2022-08-31T16:50:24Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=154591#p154591</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK: Убрать всплывающую ошибку у файла AutoHotkey.exe]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=154590#p154590" />
			<content type="html"><![CDATA[<div class="quotebox"><cite>serzh82saratov пишет:</cite><blockquote><p>как зашифровать ей строку в обычную строку</p></blockquote></div><p>Так я же <a href="http://forum.script-coding.com/viewtopic.php?pid=154300#p154300">объяснял</a> уже.</p>]]></content>
			<author>
				<name><![CDATA[teadrinker]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=24515</uri>
			</author>
			<updated>2022-08-31T16:29:26Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=154590#p154590</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK: Убрать всплывающую ошибку у файла AutoHotkey.exe]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=154586#p154586" />
			<content type="html"><![CDATA[<div class="quotebox"><cite>teadrinker пишет:</cite><blockquote><p>У меня так работает на версии 1.1.33.10:<br /></p><div class="codebox"><pre><code>string:=&quot;This is a message from AutoHotkey.&quot;
sz := ZipRawMemory(string, StrLen(string) * 2 + 2, var, &quot;password&quot;) ; подразумевается UTF-16
UnZipRawMemory(&amp;var, sz, text, &quot;password&quot;)
MsgBox % text

string := &quot;Hello, World&quot;
size := StrPutBuff(string, buf)
size := CryptAES(&amp;buf, size, &quot;sdfKIop&quot;, true, 128)
MsgBox, % StrGet(&amp;buf, size, &quot;UTF-8&quot;)
size := CryptAES(&amp;buf, size, &quot;sdfKIop&quot;, false, 128)
MsgBox, % StrGet(&amp;buf, size, &quot;UTF-8&quot;)

StrPutBuff(str, ByRef buff, encoding := &quot;UTF-8&quot;) {
   VarSetCapacity(buff, len := (StrPut(str, encoding) - 1) &lt;&lt; (encoding ~= &quot;i)^(UTF-16|cp1200)$&quot;))
   StrPut(str, &amp;buff, encoding)
   Return len
}</code></pre></div><p>В первом примере + 2 не обязательно, но желательно.</p></blockquote></div><p>То ли я всегда пробовал этот код целиком, но CryptAES заработал, ошибка была в ZipRawMemory.<br />Чё то всё равно не доходит, как зашифровать ей строку в обычную строку, и после эту строку дешифровать.</p><div class="codebox"><pre><code>#SingleInstance Force
#NoEnv
SetBatchLines, -1

decstring := &quot;Hello, World&quot;
size := StrPutBuff(decstring, decbuf)
size := CryptAES(&amp;decbuf, size, &quot;sdfKIop&quot;, true, 128)
encstring := StrGet(&amp;decbuf, size, &quot;UTF-8&quot;)
MsgBox, % encstring

size := StrPutBuff(encstring, encbuf)
size := CryptAES(&amp;encbuf, size, &quot;sdfKIop&quot;, false, 128)
MsgBox, % StrGet(&amp;encbuf, size, &quot;UTF-8&quot;)

StrPutBuff(str, ByRef buff, encoding := &quot;UTF-8&quot;) {
   VarSetCapacity(buff, len := (StrPut(str, encoding) - 1) &lt;&lt; (encoding ~= &quot;i)^(UTF-16|cp1200)$&quot;))
   StrPut(str, &amp;buff, encoding)
   Return len
}</code></pre></div>]]></content>
			<author>
				<name><![CDATA[serzh82saratov]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=27879</uri>
			</author>
			<updated>2022-08-31T15:34:48Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=154586#p154586</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK: Убрать всплывающую ошибку у файла AutoHotkey.exe]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=154437#p154437" />
			<content type="html"><![CDATA[<div class="quotebox"><cite>Malcev пишет:</cite><blockquote><p>насколько тут по-взрослому.</p></blockquote></div><p>Ну видимо на сколько-то. От школьника есть защита, уже хорошо. Насколько я слышал, питон и ява тоже не защищены достойно, хотя на счёт ява может и ошибаюсь.<br /></p><div class="quotebox"><cite>Malcev пишет:</cite><blockquote><p>можно скинуться и на кворке заказать взлом и проверить насколько крепка защита</p></blockquote></div><p>А вот это не надо, так и появляются в итоге публичные методы взлома.</p>]]></content>
			<author>
				<name><![CDATA[serzh82saratov]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=27879</uri>
			</author>
			<updated>2022-08-17T14:07:42Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=154437#p154437</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK: Убрать всплывающую ошибку у файла AutoHotkey.exe]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=154403#p154403" />
			<content type="html"><![CDATA[<div class="quotebox"><cite>serzh82saratov пишет:</cite><blockquote><p>AHK_L, школьник взломает, а тут вроде всё по взрослому.</p></blockquote></div><p>Вопрос конечно интересный, насколько тут по-взрослому.<br />Я с хакерами не знаком, виртуально знаю только одного - очень серьезного, но он точно заниматься подобными глупостями не будет.<br />Если есть интерес, то можно скинуться и на кворке заказать взлом и проверить насколько крепка защита.</p>]]></content>
			<author>
				<name><![CDATA[Malcev]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=26930</uri>
			</author>
			<updated>2022-08-15T09:55:06Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=154403#p154403</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK: Убрать всплывающую ошибку у файла AutoHotkey.exe]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=154336#p154336" />
			<content type="html"><![CDATA[<div class="quotebox"><cite>teadrinker пишет:</cite><blockquote><p>если в переменной бинарные данные, её нельзя возвращать через return</p></blockquote></div><p>Это да, косяк. Надо указатель передавать когда это требуется.</p>]]></content>
			<author>
				<name><![CDATA[serzh82saratov]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=27879</uri>
			</author>
			<updated>2022-08-11T11:45:06Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=154336#p154336</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK: Убрать всплывающую ошибку у файла AutoHotkey.exe]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=154334#p154334" />
			<content type="html"><![CDATA[<p>К тому, что если в переменной бинарные данные, её нельзя возвращать через return.</p>]]></content>
			<author>
				<name><![CDATA[teadrinker]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=24515</uri>
			</author>
			<updated>2022-08-11T11:31:03Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=154334#p154334</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK: Убрать всплывающую ошибку у файла AutoHotkey.exe]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=154332#p154332" />
			<content type="html"><![CDATA[<div class="quotebox"><cite>teadrinker пишет:</cite><blockquote><p>Но так тоже как строку возвращает, пример:</p></blockquote></div><p>А к чему этот пример, что то не понял.</p>]]></content>
			<author>
				<name><![CDATA[serzh82saratov]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=27879</uri>
			</author>
			<updated>2022-08-11T09:05:38Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=154332#p154332</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK: Убрать всплывающую ошибку у файла AutoHotkey.exe]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=154331#p154331" />
			<content type="html"><![CDATA[<div class="quotebox"><cite>serzh82saratov пишет:</cite><blockquote><p>с ней же заработало</p></blockquote></div><p>А, не очень внимательно посмотрел. Там было<br /></p><div class="codebox"><pre><code>   	If crypt
		Return outData</code></pre></div><p>Но так тоже как строку возвращает, пример:<br /></p><div class="codebox"><pre><code>data := CryptString()
MsgBox, % data
MsgBox, % Format(&quot;{:#x}&quot;, NumGet(data, &quot;Int64&quot;))

CryptString() {
   VarSetCapacity(outData, 8, 0)
   NumPut(0x6100000061, outData, &quot;Int64&quot;)
   VarSetCapacity(outData, -1)
   MsgBox, % outData
   MsgBox, % Format(&quot;{:#x}&quot;, NumGet(outData, &quot;Int64&quot;))
   Return outData
}</code></pre></div>]]></content>
			<author>
				<name><![CDATA[teadrinker]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=24515</uri>
			</author>
			<updated>2022-08-11T06:55:08Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=154331#p154331</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK: Убрать всплывающую ошибку у файла AutoHotkey.exe]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=154330#p154330" />
			<content type="html"><![CDATA[<div class="quotebox"><cite>Malcev пишет:</cite><blockquote><p>А смысл возиться и плясать с бубном с AHK_H?</p></blockquote></div><p>Ну он с шифрованием кода, с антиотладчиком, в памяти вроде части кода затирает чтобы в дампе памяти не видно было. AHK_L, школьник взломает, а тут вроде всё по взрослому.<br />И многопоточность без танцев с бубнами.</p>]]></content>
			<author>
				<name><![CDATA[serzh82saratov]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=27879</uri>
			</author>
			<updated>2022-08-11T06:01:31Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=154330#p154330</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK: Убрать всплывающую ошибку у файла AutoHotkey.exe]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=154329#p154329" />
			<content type="html"><![CDATA[<div class="quotebox"><cite>teadrinker пишет:</cite><blockquote><p>Ну да, это строка и это неправильно</p></blockquote></div><p>Вроде верно, так, с ней же заработало.<br /></p><div class="codebox"><pre><code>
CryptString(string, password, iv := &quot;&quot;, crypt := true, algorithm := &quot;AES&quot;, textEncoding := &quot;UTF-8&quot;) {
; crypt: true — encrypt, false — decrypt
	If crypt
		lenInData := StrPutBuff(string, inData, textEncoding) 
	Else 
		lenInData := StringBase64ToData(string, inData)
    
   hLib := DllCall(&quot;LoadLibrary&quot;, &quot;Str&quot;, &quot;Bcrypt.dll&quot;, &quot;Ptr&quot;)
   lenPasswordData := StrPutBuff(password, passwordData, textEncoding)
   lenHashPassword := CreateHash(&amp;passwordData, lenPasswordData, hashPassword)
   pHashIv := lenIv := 0
   
   if (iv != &quot;&quot;) {
      lenIvData := StrPutBuff(iv, ivData, textEncoding)
      lenHashIv := CreateHash(&amp;ivData, lenIvData, hashIv)
      VarSetCapacity(iv16, 16, 0)
      DllCall(&quot;RtlMoveMemory&quot;, &quot;Ptr&quot;, pHashIv := &amp;iv16, &quot;Ptr&quot;, &amp;hashIv + lenHashIv - 16, &quot;Ptr&quot;, lenIv := 16)
   } 
   crypt := (crypt ? &quot;En&quot; : &quot;De&quot;) . &quot;crypt&quot;
   lenOutData := Bcrypt(&amp;inData, lenInData, outData, &amp;hashPassword, lenHashPassword, pHashIv, lenIv, algorithm, crypt)
   DllCall(&quot;FreeLibrary&quot;, &quot;Ptr&quot;, hLib)  
   	If (crypt = &quot;Encrypt&quot;)
		Return CryptBinaryToStringBASE64(&amp;outData, lenOutData, 1) 
   Return StrGet(&amp;outData, lenOutData, textEncoding) 
}
</code></pre></div>]]></content>
			<author>
				<name><![CDATA[serzh82saratov]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=27879</uri>
			</author>
			<updated>2022-08-11T05:56:39Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=154329#p154329</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK: Убрать всплывающую ошибку у файла AutoHotkey.exe]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=154326#p154326" />
			<content type="html"><![CDATA[<div class="quotebox"><cite>serzh82saratov пишет:</cite><blockquote><p>Попробовал на виртуалке, работает. Что за ерунда может мешать работе этих функций...</p></blockquote></div><p>А смысл возиться и плясать с бубном с AHK_H?</p>]]></content>
			<author>
				<name><![CDATA[Malcev]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=26930</uri>
			</author>
			<updated>2022-08-11T02:49:16Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=154326#p154326</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK: Убрать всплывающую ошибку у файла AutoHotkey.exe]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=154325#p154325" />
			<content type="html"><![CDATA[<p>Либо, если уж хочется иметь одну и ту же функцию для шифрования и расшифровки строки, то в случае шифрования возвращать сразу base64, а в случае расшифровки строку.</p>]]></content>
			<author>
				<name><![CDATA[teadrinker]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=24515</uri>
			</author>
			<updated>2022-08-10T22:35:36Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=154325#p154325</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK: Убрать всплывающую ошибку у файла AutoHotkey.exe]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=154324#p154324" />
			<content type="html"><![CDATA[<div class="codebox"><pre><code>Return StrGet(&amp;outData, lenOutData, textEncoding)</code></pre></div><p>Ну да, это строка и это неправильно. Функция должна вернуть буфер и его длину.</p>]]></content>
			<author>
				<name><![CDATA[teadrinker]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=24515</uri>
			</author>
			<updated>2022-08-10T21:34:49Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=154324#p154324</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK: Убрать всплывающую ошибку у файла AutoHotkey.exe]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=154323#p154323" />
			<content type="html"><![CDATA[<div class="quotebox"><cite>teadrinker пишет:</cite><blockquote><p>А у тебя CryptString() пытается вернуть строку.</p></blockquote></div><div class="codebox"><pre><code>
CryptString(string, password, iv := &quot;&quot;, crypt := true, algorithm := &quot;AES&quot;, textEncoding := &quot;UTF-8&quot;) {
; crypt: true — encrypt, false — decrypt
	If crypt
		lenInData := StrPutBuff(string, inData, textEncoding) 
	Else 
		lenInData := StringBase64ToData(string, inData)
    
   hLib := DllCall(&quot;LoadLibrary&quot;, &quot;Str&quot;, &quot;Bcrypt.dll&quot;, &quot;Ptr&quot;)
   lenPasswordData := StrPutBuff(password, passwordData, textEncoding)
   lenHashPassword := CreateHash(&amp;passwordData, lenPasswordData, hashPassword)
   pHashIv := lenIv := 0
   if (iv != &quot;&quot;) {
      lenIvData := StrPutBuff(iv, ivData, textEncoding)
      lenHashIv := CreateHash(&amp;ivData, lenIvData, hashIv)
      VarSetCapacity(iv16, 16, 0)
      DllCall(&quot;RtlMoveMemory&quot;, &quot;Ptr&quot;, pHashIv := &amp;iv16, &quot;Ptr&quot;, &amp;hashIv + lenHashIv - 16, &quot;Ptr&quot;, lenIv := 16)
   }
   crypt := (crypt ? &quot;En&quot; : &quot;De&quot;) . &quot;crypt&quot;
   lenOutData := Bcrypt(&amp;inData, lenInData, outData, &amp;hashPassword, lenHashPassword, pHashIv, lenIv, algorithm, crypt)
   DllCall(&quot;FreeLibrary&quot;, &quot;Ptr&quot;, hLib)  
   	If crypt
		Return outData
   Return StrGet(&amp;outData, lenOutData, textEncoding)
}
</code></pre></div>]]></content>
			<author>
				<name><![CDATA[serzh82saratov]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=27879</uri>
			</author>
			<updated>2022-08-10T21:32:09Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=154323#p154323</id>
		</entry>
</feed>
