<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
	<channel>
		<title><![CDATA[Серый форум &mdash; AHK: Получение скриншота неактивного окна и поиск картинки в нём]]></title>
		<link>https://forum.script-coding.com/viewtopic.php?id=12959</link>
		<atom:link href="https://forum.script-coding.com/extern.php?action=feed&amp;tid=12959&amp;type=rss" rel="self" type="application/rss+xml" />
		<description><![CDATA[Недавние сообщения в теме «AHK: Получение скриншота неактивного окна и поиск картинки в нём».]]></description>
		<lastBuildDate>Sat, 07 Oct 2017 17:26:04 +0000</lastBuildDate>
		<generator>PunBB</generator>
		<item>
			<title><![CDATA[Re: AHK: Получение скриншота неактивного окна и поиск картинки в нём]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=119891#p119891</link>
			<description><![CDATA[<p><strong>Malcev</strong> А какой, следующий знак? тоже пробовал, не помогает(</p><p>Разобрался. Все ОК!</p>]]></description>
			<author><![CDATA[null@example.com (Vicoriyan)]]></author>
			<pubDate>Sat, 07 Oct 2017 17:26:04 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=119891#p119891</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: Получение скриншота неактивного окна и поиск картинки в нём]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=119890#p119890</link>
			<description><![CDATA[<p><strong>Vicoriyan</strong>, параметр, который вы выделили отвечает не за количество совпадений.</p>]]></description>
			<author><![CDATA[null@example.com (Malcev)]]></author>
			<pubDate>Sat, 07 Oct 2017 17:03:29 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=119890#p119890</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: Получение скриншота неактивного окна и поиск картинки в нём]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=119889#p119889</link>
			<description><![CDATA[<p>Внутри цикла вставить проверку значения встр. переменной A_Index. Если оно равно 10, то прервать цикл.</p>]]></description>
			<author><![CDATA[null@example.com (ypppu)]]></author>
			<pubDate>Sat, 07 Oct 2017 16:56:03 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=119889#p119889</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: Получение скриншота неактивного окна и поиск картинки в нём]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=119888#p119888</link>
			<description><![CDATA[<p><strong>ypppu</strong> С помощью %A_Index% я могу подсчитать строки, но как я могу с помощью %A_Index% назначить сколько строк парсить?</p>]]></description>
			<author><![CDATA[null@example.com (Vicoriyan)]]></author>
			<pubDate>Sat, 07 Oct 2017 16:51:36 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=119888#p119888</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: Получение скриншота неактивного окна и поиск картинки в нём]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=119887#p119887</link>
			<description><![CDATA[<p><strong>Malcev</strong> стоит одно сопадение, но список огромный RET := Gdip_ImageSearch(pBitmap2,bmpNeedle,LIST,0,0,0,0,13,0xFFFFFF,<strong>1</strong>,0)</p>]]></description>
			<author><![CDATA[null@example.com (Vicoriyan)]]></author>
			<pubDate>Sat, 07 Oct 2017 16:45:54 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=119887#p119887</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: Получение скриншота неактивного окна и поиск картинки в нём]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=119886#p119886</link>
			<description><![CDATA[<p>В циклах существует встроенная внутренняя переменная %A_Index%.</p>]]></description>
			<author><![CDATA[null@example.com (ypppu)]]></author>
			<pubDate>Sat, 07 Oct 2017 16:39:37 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=119886#p119886</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: Получение скриншота неактивного окна и поиск картинки в нём]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=119884#p119884</link>
			<description><![CDATA[<p>В функции Gdip_ImageSearch можно указать сколько совпадений найти.</p>]]></description>
			<author><![CDATA[null@example.com (Malcev)]]></author>
			<pubDate>Sat, 07 Oct 2017 16:29:56 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=119884#p119884</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: Получение скриншота неактивного окна и поиск картинки в нём]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=119883#p119883</link>
			<description><![CDATA[<p>Вопрос может немного не в тему, но как например спарсить со списка LIST только одну строку например?</p><div class="codebox"><pre><code>Loop, Parse, LIST, `n
{
   StringSplit, Coord, A_LoopField, `,
   MouseClick, , %Coord1%, %Coord2%, 1 , 0.5
}</code></pre></div><p>Сейчас на этом примере скрипт парсит список и кликает все координаты, что есть в списке. Можно поставить break, но можно ли, чтоб спарсить только одну строку? Или например спарсить тока первые 10 строк.</p>]]></description>
			<author><![CDATA[null@example.com (Vicoriyan)]]></author>
			<pubDate>Sat, 07 Oct 2017 16:12:41 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=119883#p119883</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: Получение скриншота неактивного окна и поиск картинки в нём]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=119731#p119731</link>
			<description><![CDATA[<p>Мозгов хватило мне вот на этот скрипт:</p><div class="codebox"><pre><code>Arr := Object()
Loop, Files, *.png
{
Arr.Insert(A_LoopFileLongPath)
}
hwnd := WinExist(&quot;A&quot;)
gdipToken := Gdip_Startup()
bmpHaystack := Gdip_BitmapFromHWND(hwnd)
loop % Arr.Length()
{
   bmpNeedle := Gdip_CreateBitmapFromFile(Arr[A_Index])
   RET := Gdip_ImageSearch(pBitmap2,bmpNeedle,LIST,0,0,0,0,13,0xFFFFFF,1,0)
   Gdip_DisposeImage(bmpNeedle)
   CoordMode, Mouse, Window
   Loop, Parse, LIST, `n
   {
      StringSplit, Coord, A_LoopField, `,
      MouseClick, , %Coord1%, %Coord2%, 1 , 0.5
        break 2
   }
}
Gdip_DisposeImage(bmpHaystack)
Gdip_Shutdown(gdipToken)
return</code></pre></div><p>Парсим все png файлы что есть в папке со скриптом и записываем в массив, а потом уже с массива берем по очереди путь и сравниваем.<br />Не знаю, на сколько это целесообразно и правильно, но работает.</p>]]></description>
			<author><![CDATA[null@example.com (Vicoriyan)]]></author>
			<pubDate>Tue, 03 Oct 2017 10:22:18 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=119731#p119731</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: Получение скриншота неактивного окна и поиск картинки в нём]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=119631#p119631</link>
			<description><![CDATA[<p><strong>Malcev</strong> Убрал &quot;.png&quot; и поведение тоже странное. Не знаю даже как и объяснить. msgbox показывает огромный список координат и тока по оси X, а по оси Y - 0. И что самое странное, список от 0 и на +1 больше.</p>]]></description>
			<author><![CDATA[null@example.com (Vicoriyan)]]></author>
			<pubDate>Fri, 29 Sep 2017 16:48:17 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=119631#p119631</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: Получение скриншота неактивного окна и поиск картинки в нём]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=119630#p119630</link>
			<description><![CDATA[<p>А зачем вы к&nbsp; A_LoopFileLongPath добавляете &quot;.png&quot;?</p>]]></description>
			<author><![CDATA[null@example.com (Malcev)]]></author>
			<pubDate>Fri, 29 Sep 2017 15:53:53 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=119630#p119630</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: Получение скриншота неактивного окна и поиск картинки в нём]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=119619#p119619</link>
			<description><![CDATA[<p>Доброго времени суток. Помогите пожалуйста. не могу разобраться.<br />Есть скрипт:<br /></p><div class="codebox"><pre><code>
hwnd := WinExist(&quot;A&quot;)
gdipToken := Gdip_Startup()
bmpHaystack := Gdip_BitmapFromHWND(hwnd)
Loop, Files, *.png
{
   bmpNeedle := Gdip_CreateBitmapFromFile(A_LoopFileLongPath &quot;.png&quot;)
   RET := Gdip_ImageSearch(bmpHaystack,bmpNeedle,LIST,0,0,0,0,20,0xFFFFFF,1,0)
   Gdip_DisposeImage(bmpNeedle)
   msgbox %A_LoopFileLongPath% %LIST%
   CoordMode, Mouse, Window
   Loop, Parse, LIST, `n
   {
      StringSplit, Coord, A_LoopField, `,
      MouseClick, , %Coord1%, %Coord2%, 1 , 0.5
        break 2
   }
}
Gdip_DisposeImage(bmpHaystack)
Gdip_Shutdown(gdipToken)
return</code></pre></div><p>Задумка скрипта простая, сделать скриншот активного или неактивного окна, найти на нем картинку и кликнуть по месту, где было найдено совпадение. Проблема сейчас в следующем - не находятся координаты. Скрипт успешно находит окно, успешно делает скрин, успешно прописывает по очереди путь к картинкам с которыми нужно сравнивать, но не прописывает в переменную LIST координаты при активном окне. Всю картину можно увидеть в проверке msgbox %A_LoopFileLongPath% %LIST%. Что не так? Где ошибка?</p>]]></description>
			<author><![CDATA[null@example.com (Vicoriyan)]]></author>
			<pubDate>Fri, 29 Sep 2017 15:04:57 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=119619#p119619</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: Получение скриншота неактивного окна и поиск картинки в нём]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=119588#p119588</link>
			<description><![CDATA[<p>Попробовал код <a href="http://forum.script-coding.com/viewtopic.php?pid=118955#p118955">http://forum.script-coding.com/viewtopi … 55#p118955</a> и у меня ничего не вышло. Можно прописать конечный код получения скриншота неактивного окна? Например WinGet, task_id, ID, Безымянный — Блокнот.</p><p>Вопрос отпал. <img src="//forum.script-coding.com/img/smilies/smile.png" width="15" height="15" /></p>]]></description>
			<author><![CDATA[null@example.com (Vicoriyan)]]></author>
			<pubDate>Mon, 25 Sep 2017 19:21:02 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=119588#p119588</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: Получение скриншота неактивного окна и поиск картинки в нём]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=118957#p118957</link>
			<description><![CDATA[<p><strong>Malcev</strong><br />hwnd вот так находить?<br /></p><div class="codebox"><pre><code>WinGet, hwnd, ID, Косынка</code></pre></div><p>Всё сам разобрался! Спасибо ОГРОМНОЕ <strong>Malcev</strong></p>]]></description>
			<author><![CDATA[null@example.com (Xuli4)]]></author>
			<pubDate>Wed, 30 Aug 2017 21:01:54 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=118957#p118957</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: Получение скриншота неактивного окна и поиск картинки в нём]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=118955#p118955</link>
			<description><![CDATA[<p>Написал такой код:<br /></p><div class="codebox"><pre><code>#NoEnv
#include imagesearch.ahk
OnExit, EXIT_LABEL
F1::
WinGet, task_id, ID, Косынка
DllCall(&quot;PrintWindow&quot;, UInt,task_id, UInt,hdc_buffer, UInt,0)
gdipToken := Gdip_Startup()

;bmpHaystack := Gdip_CreateBitmapFromFile(&quot;in.png&quot;)
bmpHaystack := hdc_buffer
bmpNeedle := Gdip_CreateBitmapFromFile(&quot;for.png&quot;) 
RET := Gdip_ImageSearch(bmpHaystack,bmpNeedle,LIST,0,0,0,0,0,0xFFFFFF,1,0)
Gdip_DisposeImage(bmpHaystack)
Gdip_DisposeImage(bmpNeedle)
Gdip_Shutdown(gdipToken)
MsgBox, % &quot;Returned: &quot; RET &quot;`n`n&quot; LIST

return

EXIT_LABEL: ; be really sure the script will shutdown GDIP
Gdip_Shutdown(gdipToken)
EXITAPP</code></pre></div><p>В файле imagesearch.ahk код (без начала которое перенесено в этот файл) из поста Malcev.<br />Я определённо что-то не так делаю)<br />Нужно найти картинку колоды в косынке. В файле for.png и есть картинка этой колоды.</p>]]></description>
			<author><![CDATA[null@example.com (Xuli4)]]></author>
			<pubDate>Wed, 30 Aug 2017 20:58:52 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=118955#p118955</guid>
		</item>
	</channel>
</rss>
