<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
	<title type="html"><![CDATA[Серый форум &mdash; AHK: Запись в txt суммы нажатий клавиш или кликов - в конкретном окне]]></title>
	<link rel="self" href="https://forum.script-coding.com/extern.php?action=feed&amp;tid=14447&amp;type=atom" />
	<updated>2019-08-13T07:52:06Z</updated>
	<generator>PunBB</generator>
	<id>https://forum.script-coding.com/viewtopic.php?id=14447</id>
		<entry>
			<title type="html"><![CDATA[Re: AHK: Запись в txt суммы нажатий клавиш или кликов - в конкретном окне]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=135526#p135526" />
			<content type="html"><![CDATA[<p>Здесь хорошо написано про FileAppend: <a href="https://www.autohotkey.com/boards/viewtopic.php?f=74&amp;t=61853&amp;hilit=save+files">https://www.autohotkey.com/boards/viewt … save+files</a>.</p>]]></content>
			<author>
				<name><![CDATA[svoboden]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=34280</uri>
			</author>
			<updated>2019-08-13T07:52:06Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=135526#p135526</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK: Запись в txt суммы нажатий клавиш или кликов - в конкретном окне]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=135478#p135478" />
			<content type="html"><![CDATA[<p>FileAppend дописывает, если файл уже существует, Write переписывает всё заново.</p>]]></content>
			<author>
				<name><![CDATA[teadrinker]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=24515</uri>
			</author>
			<updated>2019-08-12T08:52:41Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=135478#p135478</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK: Запись в txt суммы нажатий клавиш или кликов - в конкретном окне]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=135475#p135475" />
			<content type="html"><![CDATA[<div class="quotebox"><cite>teadrinker пишет:</cite><blockquote><div class="codebox"><pre><code>   oFile := FileOpen(A_ScriptDir . &quot;\1.txt&quot;, &quot;w&quot;)
   oFile.Write(text)
   oFile.Close()
</code></pre></div></blockquote></div><p>А почему не «<em>FileAppend</em>»?</p>]]></content>
			<author>
				<name><![CDATA[DD]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=25263</uri>
			</author>
			<updated>2019-08-12T01:09:24Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=135475#p135475</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK: Запись в txt суммы нажатий клавиш или кликов - в конкретном окне]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=130789#p130789" />
			<content type="html"><![CDATA[<p><strong>teadrinker</strong>, спасибо вам.<br />Теперь все заработало.</p>]]></content>
			<author>
				<name><![CDATA[ОсиповаТатьяна]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=39847</uri>
			</author>
			<updated>2018-12-31T23:28:55Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=130789#p130789</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK: Запись в txt суммы нажатий клавиш или кликов - в конкретном окне]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=130681#p130681" />
			<content type="html"><![CDATA[<p>Не совсем понял идею, что должно в итоге получаться. Лучше новую тему создайте, чтобы здесь людей не путать.</p>]]></content>
			<author>
				<name><![CDATA[teadrinker]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=24515</uri>
			</author>
			<updated>2018-12-28T16:40:30Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=130681#p130681</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK: Запись в txt суммы нажатий клавиш или кликов - в конкретном окне]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=130680#p130680" />
			<content type="html"><![CDATA[<p>А не подскажите, возможно ли провернуть похожее со строками автозамены? У меня есть длиннющий список таких строк, который периодически пополняется новыми, но заменяемые строки в основном состоят из одинаковых составных частей, различаясь лишь в частностях, таким образом, было бы удобно иметь составные наборы, из которых эти &quot;HotStrings&quot; динамически собирались, как в Вашем примере с хоткеями. Что-то вроде:<br /></p><div class="codebox"><pre><code>
vars := [&quot;test&quot;, &quot;тест&quot;]
str  := [&quot;tt&quot;, &quot;тт&quot;]
Loop 2 {
	i := A_Index
	Loop 10 {
		t := vars[ i ] . &quot; &quot; . A_Index
		Hotstring(Format(&quot;:*:{}{}::&quot;, str[i], A_Index), Ctrl_V(&quot;%t%&quot;) )
	}
}
Ctrl_V(param) {
	Send { ^a }
	SendInput {Text}%param%
}
</code></pre></div><p>Не соображу всё, как бы правильно сделать запись.</p>]]></content>
			<author>
				<name><![CDATA[KusochekDobra]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=33846</uri>
			</author>
			<updated>2018-12-28T16:12:51Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=130680#p130680</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK: Запись в txt суммы нажатий клавиш или кликов - в конкретном окне]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=130678#p130678" />
			<content type="html"><![CDATA[<div class="quotebox"><cite>KusochekDobra пишет:</cite><blockquote><p>может не быть обязательным, постоянно писать изменения счётчика. Можно это делать при переключении на любое другое окно</p></blockquote></div><p>Не совсем корректно. Если скрипт будет завершён до переключения на другое окно, текст не запишется.<br /></p><div class="quotebox"><cite>ОсиповаТатьяна пишет:</cite><blockquote><p>А как заставить код реагировать - еще и на нажатия клавиш ?</p></blockquote></div><p>Можно назначить все кнопки клавиатуры и мыши горячими клавишами таким образом:<br /></p><div class="codebox"><pre><code>Loop 255
   Hotkey, % &quot;~vk&quot; . Format(&quot;{:X}&quot;, A_Index), WatchPress, On
Return

WatchPress()  {
   static obj := { TTOTAL_CMD: {text: &quot;Total Commander&quot;, count: 0}, Notepad: {text: &quot;Блокнот&quot;, count: 0} }
   Critical
   WinGetClass, winClass, A
   if winClass not in TTOTAL_CMD,Notepad
      Return
   
   obj[winClass, &quot;count&quot;]++
   for k, v in obj
      text .= (text = &quot;&quot; ? &quot;&quot; : &quot;`r`n&quot;) . v.text . &quot; -&quot; . v.count
   Sort, text
   
   oFile := FileOpen(A_ScriptDir . &quot;\1.txt&quot;, &quot;w&quot;)
   oFile.Write(text)
   oFile.Close()
}</code></pre></div>]]></content>
			<author>
				<name><![CDATA[teadrinker]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=24515</uri>
			</author>
			<updated>2018-12-28T12:04:28Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=130678#p130678</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK: Запись в txt суммы нажатий клавиш или кликов - в конкретном окне]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=130666#p130666" />
			<content type="html"><![CDATA[<p><strong>Phoenixxx_Czar</strong><br />Этот код считает только клики мышкой.<br />А как заставить код реагировать - еще и на нажатия клавиш ?</p>]]></content>
			<author>
				<name><![CDATA[ОсиповаТатьяна]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=39847</uri>
			</author>
			<updated>2018-12-28T06:46:18Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=130666#p130666</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK: Запись в txt суммы нажатий клавиш или кликов - в конкретном окне]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=130664#p130664" />
			<content type="html"><![CDATA[<p>Я&nbsp; никогда не использовал иники, но знал, что можно указать значение по умолчанию, но почему-то не подумал, что можно просто нуль указать.</p>]]></content>
			<author>
				<name><![CDATA[Phoenixxx_Czar]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=34426</uri>
			</author>
			<updated>2018-12-28T01:27:57Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=130664#p130664</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK: Запись в txt суммы нажатий клавиш или кликов - в конкретном окне]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=130663#p130663" />
			<content type="html"><![CDATA[<p>Кстати, значения &quot;по умолчанию&quot; для <a href="https://autohotkey.com/docs/commands/IniRead.htm">IniRead</a>, можно указать через запятую:<br /></p><div class="codebox"><pre><code>
IniRead, countNotepad, % DIR_INI, Global, Notepad, 0
IniRead, countTotalCommander, % DIR_INI, Global, Total_Commander, 0
</code></pre></div>]]></content>
			<author>
				<name><![CDATA[KusochekDobra]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=33846</uri>
			</author>
			<updated>2018-12-28T00:32:16Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=130663#p130663</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK: Запись в txt суммы нажатий клавиш или кликов - в конкретном окне]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=130662#p130662" />
			<content type="html"><![CDATA[<p>Для того, кто только погружается в AHK, то, что Вы предлагаете последним, не объясняет необходимость использования. К тому же, возможно, хранить в текстовом файле - принципиально, чтобы использовать где-то ещё, а так же, может не быть обязательным, постоянно писать изменения счётчика. Можно это делать при переключении на любое другое окно.<br /></p><div class="codebox"><pre><code>
temp := counter := 0

~LButton::
WinGetClass, OutputVar, A
if OutputVar = Notepad
{
	counter++
} else if (temp != counter) {
	temp := counter
	WriteData(&quot;Блокнот -&quot; . counter))
}
Return

WriteData(data, storage := &quot;M:\1537\1.txt&quot;) {
	file := FileOpen(storage, &quot;w&quot;, &quot;utf-8&quot;)
	file.Write(data)
	file.Close()
}
</code></pre></div><p>И ещё момент, если Ваш посыл обращается к предыдущему оратору, не обязательно это обозначать выделяя жирным текстом его псевдоним. Это и так очевидно по смыслу сказанного.</p>]]></content>
			<author>
				<name><![CDATA[KusochekDobra]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=33846</uri>
			</author>
			<updated>2018-12-28T00:23:06Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=130662#p130662</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK: Запись в txt суммы нажатий клавиш или кликов - в конкретном окне]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=130661#p130661" />
			<content type="html"><![CDATA[<p><strong>ОсиповаТатьяна</strong>, ну значит смотри.</p><div class="codebox"><pre><code>global DIR_INI := &quot;m:/1537/1.ini&quot;

IniRead, countNotepad, % DIR_INI, Global, Notepad
IniRead, countTotalCommander, % DIR_INI, Global, Total_Commander

for k, v in [&quot;countNotepad&quot;, &quot;countTotalCommander&quot;]
	if (%v% == &quot;ERROR&quot;)
		%v% := 0

~LButton::
WinGetClass, OutputVar, A
IF (OutputVar == &quot;Notepad&quot;)
{
	countNotepad++
	IniWrite, % countNotepad, % DIR_INI, Global, Notepad
	Tooltip, ЭТО БЛОКНОТ
	Sleep, 200
	MsgBox, % &quot;Счётчик для Блокнота: &quot; countNotepad
}
Return</code></pre></div><p>Опять же! Проще все это делать через массив и сохранять в JSON формате. Меньше мороки с считыванием каждого значения с INI файла и записыванием в него.</p>]]></content>
			<author>
				<name><![CDATA[Phoenixxx_Czar]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=34426</uri>
			</author>
			<updated>2018-12-27T23:58:50Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=130661#p130661</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK: Запись в txt суммы нажатий клавиш или кликов - в конкретном окне]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=130659#p130659" />
			<content type="html"><![CDATA[<p><strong>Indomito</strong><br />Теперь код&nbsp; выглядит вот так:<br /></p><div class="codebox"><pre><code>~LButton::
WinGetClass, OutputVar, A
IF OutputVar = Notepad
{
 Tooltip, ЭТО БЛОКНОТ
NNN++
Sleep, 200
MsgBox, Счётчик для Блокнота: %NNN%

 
FileAppend, %NNN%, M:\1537\1.txt ; Где `n эквивалент Enter

}
Return</code></pre></div><p>Но скрипт выводит результат не совсем как счетчик.<br />Он пишет числа, одно за другим вдоль строки. А если повторно его запустить - то продолжает писать вдоль строки по-новой, начиная с единицы.&nbsp; Примерно вот так:<br />&quot;Блокнот -123412345&quot;</p><p>Я имела ввиду запись счетчика в смысле - прирост числа на единицу.</p><p>То есть например записано &quot;Блокнот -1&quot;,&nbsp; а после одного срабатывания должно получится &quot;Блокнот -2&quot;, то есть прирост числа на одну единицу.</p>]]></content>
			<author>
				<name><![CDATA[ОсиповаТатьяна]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=39847</uri>
			</author>
			<updated>2018-12-27T20:07:21Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=130659#p130659</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK: Запись в txt суммы нажатий клавиш или кликов - в конкретном окне]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=130657#p130657" />
			<content type="html"><![CDATA[<p><strong>ОсиповаТатьяна</strong><br /></p><div class="quotebox"><blockquote><p><strong>FileAppend</strong><br />Добавляет текст к файлу (создавая файл при необходимости). <br />FileAppend [, Text, Filename]</p></blockquote></div><div class="codebox"><pre><code>FileAppend, что то записали.`n, C:\Мои документы\Test.txt ; Где `n эквивалент Enter</code></pre></div><p>Или так.<br /></p><div class="codebox"><pre><code>a := &quot;что то записали.`n&quot; 
FileAppend, %a%, C:\Мои документы\Test.txt ; Где `n эквивалент Enter</code></pre></div><p>Удачи с АНК!</p>]]></content>
			<author>
				<name><![CDATA[Indomito]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=27285</uri>
			</author>
			<updated>2018-12-27T18:35:41Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=130657#p130657</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK: Запись в txt суммы нажатий клавиш или кликов - в конкретном окне]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=130656#p130656" />
			<content type="html"><![CDATA[<p><strong>belyankin12</strong><br />По сути то одинаково, если не стоит вопрос - &quot;Как с этим разобраться, что бы считать и вывести на экран?&quot;.</p>]]></content>
			<author>
				<name><![CDATA[Indomito]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=27285</uri>
			</author>
			<updated>2018-12-27T18:25:26Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=130656#p130656</id>
		</entry>
</feed>
