<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
	<channel>
		<title>Форум QUIK [тема: Прочесть таблицу новости через LUA]</title>
		<link>http://forum.quik.ru</link>
		<description>Новое в теме Прочесть таблицу новости через LUA форума  на сайте Форум QUIK [forum.quik.ru]</description>
		<language>ru</language>
		<docs>http://backend.userland.com/rss2</docs>
		<pubDate>Mon, 04 May 2026 11:36:59 +0300</pubDate>
		<item>
			<title>Прочесть таблицу новости через LUA</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message57139/topic3776/">Прочесть таблицу новости через LUA</a></b> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			не будет вам новостей по одной простой причине: поток новостей стоит для брокеров денег и клиенты не имеют права их транслировать на свои сайты, в телеграм-каналы и так далее. &nbsp; <br />
			<i>10.08.2021 20:35:33, rst9.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message57139/topic3776/</link>
			<guid>http://forum.quik.ru/messages/forum10/message57139/topic3776/</guid>
			<pubDate>Tue, 10 Aug 2021 20:35:33 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Прочесть таблицу новости через LUA</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message57020/topic3776/">Прочесть таблицу новости через LUA</a></b> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			<a class="blog-p-user-name" id="bp_L814jw2b" href="/user/14827/" bx-tooltip-user-id="14827">Олег</a>, Да, у меня сестра такая. У неё денег вложено раза в три больше, чем у меня, но тикеров тоже около 30, и она носится с ними, как с писаной торбой, проводит какие-то &quot;фундаментальные анализы&quot; и прочую хрень. А я так, погулять вышел: единственный критерий - частота сделок. Раз народ там ковыряется, значит, и мне можно. <img src="http://forum.quik.ru/upload/main/smiles/5/icon_smile.png" border="0" data-code=":smile:" data-definition="SD" alt=":smile:" style="width:16px;height:16px;" title="С улыбкой" class="bx-smile" /> &nbsp; <br />
			<i>05.08.2021 00:14:25, Владимир.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message57020/topic3776/</link>
			<guid>http://forum.quik.ru/messages/forum10/message57020/topic3776/</guid>
			<pubDate>Thu, 05 Aug 2021 00:14:25 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Прочесть таблицу новости через LUA</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message57019/topic3776/">Прочесть таблицу новости через LUA</a></b> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			<a class="blog-p-user-name" id="bp_GLN1qsVW" href="/user/14299/" bx-tooltip-user-id="14299">Владимир</a>, <br />да, у меня скромнее - порядка 30-ти, но выверенных и подходящих под мои критерии инструментов - но мне достаточно :)<br /><br />********************************************<br />Уважаемый разработчик QUIK, хотелось бы услышать ваше мнение по обозначенной проблеме и по предложенным вариантам реализации! <br />
			<i>04.08.2021 23:38:47, Олег.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message57019/topic3776/</link>
			<guid>http://forum.quik.ru/messages/forum10/message57019/topic3776/</guid>
			<pubDate>Wed, 04 Aug 2021 23:38:47 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Прочесть таблицу новости через LUA</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message57018/topic3776/">Прочесть таблицу новости через LUA</a></b> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			<a class="blog-p-user-name" id="bp_G1BVnDq9" href="/user/14827/" bx-tooltip-user-id="14827">Олег</a>, У-у-у! У меня только в портфеле более 50 тикеров у каждого брокера, а следит он за... у одного брокера чуть больше сотни, но у другого-то больше тысячи! И таймфреймы начинаются от 15-секундных и дальше по степени двойки. Графиков не напасёшься! &nbsp;Не, как говорил незабвенный Владимир Ильич: &quot;Мы пойдём другим путём&quot;! <img src="http://forum.quik.ru/upload/main/smiles/5/icon_smile.png" border="0" data-code=":smile:" data-definition="SD" alt=":smile:" style="width:16px;height:16px;" title="С улыбкой" class="bx-smile" /> &nbsp; <br />
			<i>04.08.2021 22:59:55, Владимир.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message57018/topic3776/</link>
			<guid>http://forum.quik.ru/messages/forum10/message57018/topic3776/</guid>
			<pubDate>Wed, 04 Aug 2021 22:59:55 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Прочесть таблицу новости через LUA</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message57017/topic3776/">Прочесть таблицу новости через LUA</a></b> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			<a class="blog-p-user-name" id="bp_SiOaaLK3" href="/user/14299/" bx-tooltip-user-id="14299">Владимир</a>, :)<br /> <br />По каждому инструменту у меня открыто два графика - один шестиминутный, второй минутный, а оперативные изменения под SL и TP я беру из стакана. <br />
			<i>04.08.2021 22:15:37, Олег.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message57017/topic3776/</link>
			<guid>http://forum.quik.ru/messages/forum10/message57017/topic3776/</guid>
			<pubDate>Wed, 04 Aug 2021 22:15:37 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Прочесть таблицу новости через LUA</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message57015/topic3776/">Прочесть таблицу новости через LUA</a></b> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			<a class="blog-p-user-name" id="bp_MMeGD3rs" href="/user/14827/" bx-tooltip-user-id="14827">Олег</a>, О! Коллега! Я когда-то спрашивал здесь: &quot;Есть ли на форуме хоть один, кроме меня, кто программирует на чистом Lua&quot;? Никто не отозвался. Оказывается - есть! <img src="http://forum.quik.ru/upload/main/smiles/5/icon_smile.png" border="0" data-code=":smile:" data-definition="SD" alt=":smile:" style="width:16px;height:16px;" title="С улыбкой" class="bx-smile" /> <br /><br />Как это &quot;ничего ужасного&quot;? Ужаснее не придумаешь! Мне нужна пара последних свечей по каждому таймфрейму. Или хотя бы одна, последняя. И таймфреймы-то начинаются аж с 15-минутных. И где взять?<br /><br />По вопросу ветки: новостями никогда не интересовался, а в этой ветке мне очень понравилось начало:<br /><I>- Друзья, подскажите пожалуйста можно ли как-то прочитать таблицу новостей QUIK через LUA ?</I><br /><I>- Никак.</I> <br />
			<i>04.08.2021 22:00:42, Владимир.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message57015/topic3776/</link>
			<guid>http://forum.quik.ru/messages/forum10/message57015/topic3776/</guid>
			<pubDate>Wed, 04 Aug 2021 22:00:42 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Прочесть таблицу новости через LUA</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message57013/topic3776/">Прочесть таблицу новости через LUA</a></b> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			РебятЫ, давайте жить дружно!<br /><br />У каждого свой уровень программирования, у каждого свой уровень понимания вопроса, у каждого свои любимые инструменты и приемчики и у каждого свои потребности. У каждого свои скрипты и, что самое главное, ОНИ РАБОТАЮТ. Но все мы работаем в QUIK и это ДАННОСТЬ. И нет смысла ломать палки - есть ли Float в ассемблере или нет его. Я пользуюсь тем функционалом, который мне дают и он пока меня устраивает. Я не выгружаю данные куда-то наружу, чтобы анализировать их в C++, я не пишу коннекты и внешние компоненты, меня устраивает QLUA - все, что мне надо - все работает и в этой среде. Да, я считываю значения свечек и индикаторов по идентификатору и не вижу в этом ничего ужасного, все так же хорошо работает и на таймфрейме и 3, и 5, и 6, и 10 - благодаря этому я могу оперативно сверить результаты работы своего скрипта с результатами в таблицах и на графиках и у меня нет никаких расхождений. <br /><br />Теперь по вопросу ветки: мне надо всего-навсего прочитать очередную новость, найти нужные там вхождения и сделать в зависимости от этого определенные вычисления - И ВСЕ! Поэтому я и имел ввиду использование уже имеющегося механизма обращения к объекту через идентификатор, чтобы ускорило процесс разработки. Это мой взгляд на вещи. В этом механизме мне все понятно - что и куда... &nbsp;Зачем усложнять?<br /><br />И конечно, хотелось бы услышать мнение разработчика QUIK, а не перебранку на пустом месте адептов разных программистских течений. Поверьте, Вы все очень умные и талантливые... А мне надо всего-то новость прочитать. <br />
			<i>04.08.2021 21:14:56, Олег.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message57013/topic3776/</link>
			<guid>http://forum.quik.ru/messages/forum10/message57013/topic3776/</guid>
			<pubDate>Wed, 04 Aug 2021 21:14:56 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Прочесть таблицу новости через LUA</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message57008/topic3776/">Прочесть таблицу новости через LUA</a></b> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			<a class="blog-p-user-name" id="bp_QG4RFlnf" href="/user/3132/" bx-tooltip-user-id="3132">Nikolay</a>, <br />====quote====<br />Вы таблицу зачем открываете? Смотреть глазами?<br /><br />=============<br />ЩАЗ! А файл я зачем открываю? Чтобы получить его идентификатор (handle) и в дальнейшем работать с ним по этому идентификатору. А глазами-то мне зачем на неё смотреть? Что я там увижу? Это в таблице моего скрипта, в миллион раз более наглядной, можно что-то увидеть - вот она именно ДЛЯ ВИЗУАЛИЗАЦИИ, для юзера - скрипту она нафиг не нужна. Да и мне она уже не нужна - только захочешь что-нибудь купить или продать, потянешься за мышкой - БАБАХ! А она уже всё сделала. <img src="http://forum.quik.ru/upload/main/smiles/5/icon_smile.png" border="0" data-code=":smile:" data-definition="SD" alt=":smile:" style="width:16px;height:16px;" title="С улыбкой" class="bx-smile" /> <br /><br />Какой ещё &quot;доступ к данным параметров корректный&quot;? Вот я буквально вчера писал в другой ветке:<br /><br /><I>1. Мне хотелось бы получать с сервера свечи (от 15-минутных и выше), при этом меня интересуют только последние две свечи по каждому таймфрейму, можно даже без коллбеков - только доступ к этим данным.</I><br /><br /><I>2. Я не умею программно прочесть состояние своего портфеля (та табличка, которая зелёненьким цвет текста выводит). Портфель я, ессно, веду у себя, но время от времени случаются сбои и рассогласование содержимого портфеля с точки зрения брокера и самого скрипта. Примерно раз в неделю я это дело проверяю (вручную) и убираю нестыковки. А хотелось бы делать это программно, примерно раз в полчаса. Никто не знает, как это сделать?</I> <br />
			<i>04.08.2021 15:39:00, Владимир.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message57008/topic3776/</link>
			<guid>http://forum.quik.ru/messages/forum10/message57008/topic3776/</guid>
			<pubDate>Wed, 04 Aug 2021 15:39:00 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Прочесть таблицу новости через LUA</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message57007/topic3776/">Прочесть таблицу новости через LUA</a></b> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			<br />====quote====<br /><a class="blog-p-user-name" id="bp_8n4V3lK6" href="/user/14299/" bx-tooltip-user-id="14299">Владимир</a> написал:<br /> &nbsp; &nbsp;<noindex><a href="/user/3132/" target="_blank" rel="nofollow">Nikolay</a></noindex>, ЧАВО?! Во-первых, В МОИХ базах данных, как правило, ОДНА таблица (неоднородных кортежей). &nbsp;:: Во-вторых, какое отношение имеет открытие таблицы к визуализации? ТТТ - это ХРАНЕНИЕ данных в терминале, а никакая не &quot;визуализация&quot;. И доступ к ней как раз &quot;ракообразный&quot;, через getParamEx, а не getItem, скажем. Разумного объяснения сему факту лично я найти не могу. Привязка же доступа к графикам - это КРЕТИНИЗМ! АДНАЗНАЧНА!<br />=============<br /><br />... ТТТ - это ХРАНЕНИЕ данных в терминале ... оставлю без комментариев<br /><br />&quot;Во-вторых, какое отношение имеет открытие таблицы к визуализации?&quot;<br /> Вы таблицу зачем открываете? Смотреть глазами? Не надо смотреть, то зачем открывать. А если смотреть, то какие претензии к термину &quot;визуализация&quot;.<br /><br />Доступ к данным параметров корректный. Обычный запрос на получение данных key-value по ключу параметра. <br />
			<i>04.08.2021 15:03:33, Nikolay.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message57007/topic3776/</link>
			<guid>http://forum.quik.ru/messages/forum10/message57007/topic3776/</guid>
			<pubDate>Wed, 04 Aug 2021 15:03:33 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Прочесть таблицу новости через LUA</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message57003/topic3776/">Прочесть таблицу новости через LUA</a></b> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			<a class="blog-p-user-name" id="bp_1I3WIZ33" href="/user/62/" bx-tooltip-user-id="62">nikolz</a>, Что, сегодня в Кащенко день открытых дверей? <img src="http://forum.quik.ru/upload/main/smiles/5/icon_smile.png" border="0" data-code=":smile:" data-definition="SD" alt=":smile:" style="width:16px;height:16px;" title="С улыбкой" class="bx-smile" /> <br /><br />Лапуль, ЛЮБОЙ тип данных (в т.ч. и тип float) существует тогда и ТОЛЬКО тогда, если к нему имеются а) общие правила целостности, ограничивающие набор экземпляров этого типа и б) коллекции операций, применимых к таким экземплярам. Не соблаговолите ли привести эти данные для типа float, который &quot;в ассемблере существует всегда и не зависит от наличия сопроцессора&quot;? <img src="http://forum.quik.ru/upload/main/smiles/5/icon_wink.png" border="0" data-code=":wink:" data-definition="SD" alt=":wink:" style="width:16px;height:16px;" title="Шутливо" class="bx-smile" /> <br /><br />И кто Вам сказал, что &quot;float - это способ хранить числа в большем диапазоне значений с экономией памяти, но с допустимой погрешностью&quot;? Да только я только на этом форуме несколько раз тыкал носом таких умников, показывая, что UI64 позволяет хранить все 19-значные числа и даже часть 20-значных, и что на это Ваш сраный float в принципе не способен. А эта грёбаная &quot;динамическая типизация&quot; есть именно БРЕДЯТИНА! Говно, способное испохабить любой язык. <br />
			<i>04.08.2021 13:57:04, Владимир.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message57003/topic3776/</link>
			<guid>http://forum.quik.ru/messages/forum10/message57003/topic3776/</guid>
			<pubDate>Wed, 04 Aug 2021 13:57:04 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Прочесть таблицу новости через LUA</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message57000/topic3776/">Прочесть таблицу новости через LUA</a></b> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			<br />====quote====<br /><a class="blog-p-user-name" id="bp_gqLHMJ8B" href="/user/14299/" bx-tooltip-user-id="14299">Владимир</a> написал:<br /> &nbsp; &nbsp;<noindex><a href="mailto:s_mike@rambler.ru" target="_blank" rel="nofollow">s_mike@rambler.ru</a></noindex>, &nbsp;Лапуль, про ассемблер я не только слышал, но и писал аж на ТРЁХ ассемблерах (БЭСМ, PDP и Intel). И на Васике тоже доводилось писать. Для справки: тип integer в любом ассемблере был, есть и будет ВСЕГДА! Это как раз наоборот, типа float нам когда-то не было - он появился позже, &#91;тогда ещё&#93; отдельным сопроцессором и со своей системой команд. Вот sql действительно не использовал никогда - я чуть не всю свою сознательную жизнь занимался сложными базами данных, и моя давняя фраза на эту тему звучит так: &quot;Базы данных могут быть либо сложными либо реляционными, но не тем и другим одновременно&quot;. И тыщу раз говорил, что за &quot;слабую типитзацию&quot; руки-ноги бы повыдёргивал тем умникам, которые выродили эту бредятину.<br /><br /><noindex><a href="/user/3132/" target="_blank" rel="nofollow">Nikolay</a></noindex>, ЧАВО?! Во-первых, В МОИХ базах данных, как правило, ОДНА таблица (неоднородных кортежей). &nbsp;:: Во-вторых, какое отношение имеет открытие таблицы к визуализации? ТТТ - это ХРАНЕНИЕ данных в терминале, а никакая не &quot;визуализация&quot;. И доступ к ней как раз &quot;ракообразный&quot;, через getParamEx, а не getItem, скажем. Разумного объяснения сему факту лично я найти не могу. Привязка же доступа к графикам - это КРЕТИНИЗМ! АДНАЗНАЧНА!<br />=============<br />добавлю свою ложку...<br />тип float в ассемблере существует всегда и он не зависит от наличия сопроцессора. <br />Типы вводятся в язык по причине необходимости работать с ними.<br />float - это способ хранить числа в большем диапазоне значений <br />с экономией памяти, но с допустимой погрешностью. <br />альтернативой был двоично-десятичный тип &nbsp;- позволявший точно хранить финансовые данные. <br />---------------<br />Но в языках нет понятия &quot;бредятина&quot; <br />----------------------------------------------------<br />Если что-то не понятно, то зеркало не виновато. <br />
			<i>04.08.2021 13:27:56, nikolz.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message57000/topic3776/</link>
			<guid>http://forum.quik.ru/messages/forum10/message57000/topic3776/</guid>
			<pubDate>Wed, 04 Aug 2021 13:27:56 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Прочесть таблицу новости через LUA</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message56997/topic3776/">Прочесть таблицу новости через LUA</a></b> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			<a class="blog-p-user-name" id="bp_rILFefR4" href="/user/47/" bx-tooltip-user-id="47"><noindex><a href="mailto:s_mike@rambler.ru" target="_blank" rel="nofollow">s_mike@rambler.ru</a></noindex></a>, &nbsp;Лапуль, про ассемблер я не только слышал, но и писал аж на ТРЁХ ассемблерах (БЭСМ, PDP и Intel). И на Васике тоже доводилось писать. Для справки: тип integer в любом ассемблере был, есть и будет ВСЕГДА! Это как раз наоборот, типа float нам когда-то не было - он появился позже, &#91;тогда ещё&#93; отдельным сопроцессором и со своей системой команд. Вот sql действительно не использовал никогда - я чуть не всю свою сознательную жизнь занимался сложными базами данных, и моя давняя фраза на эту тему звучит так: &quot;Базы данных могут быть либо сложными либо реляционными, но не тем и другим одновременно&quot;. И тыщу раз говорил, что за &quot;слабую типитзацию&quot; руки-ноги бы повыдёргивал тем умникам, которые выродили эту бредятину.<br /><br /><a class="blog-p-user-name" id="bp_bhvEepre" href="/user/3132/" bx-tooltip-user-id="3132">Nikolay</a>, ЧАВО?! Во-первых, В МОИХ базах данных, как правило, ОДНА таблица (неоднородных кортежей). &nbsp;<img src="http://forum.quik.ru/upload/main/smiles/5/icon_smile.png" border="0" data-code=":smile:" data-definition="SD" alt=":smile:" style="width:16px;height:16px;" title="С улыбкой" class="bx-smile" /> Во-вторых, какое отношение имеет открытие таблицы к визуализации? ТТТ - это ХРАНЕНИЕ данных в терминале, а никакая не &quot;визуализация&quot;. И доступ к ней как раз &quot;ракообразный&quot;, через getParamEx, а не getItem, скажем. Разумного объяснения сему факту лично я найти не могу. Привязка же доступа к графикам - это КРЕТИНИЗМ! АДНАЗНАЧНА! <br />
			<i>04.08.2021 12:29:53, Владимир.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message56997/topic3776/</link>
			<guid>http://forum.quik.ru/messages/forum10/message56997/topic3776/</guid>
			<pubDate>Wed, 04 Aug 2021 12:29:53 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Прочесть таблицу новости через LUA</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message56996/topic3776/">Прочесть таблицу новости через LUA</a></b> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			Пример: База данных. в ней много таблиц. Пока не откроешь таблицу, т.е. визуализируешь данные, прочитать из таблицы ничего нельзя.<br />Очевидно, что так это не работает.<br /><br />ТТТ - это визуализация данных в терминале. Но ее можно и не открывать, т.к. key-value, связанный с этой &quot;таблицей&quot;, находится в памяти и доступен для чтения через публичные методы. Поэтому есть необходимость реализации методов для всех, так называемых &quot;таблиц&quot; Квика.<br /><br />Привязка же к графикам - это просто один из методов, считывания информации с этого графика, со всеми вытекающими проблемами. И зачастую, используется не для получения данных баров (свечек). <br />
			<i>04.08.2021 11:43:39, Nikolay.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message56996/topic3776/</link>
			<guid>http://forum.quik.ru/messages/forum10/message56996/topic3776/</guid>
			<pubDate>Wed, 04 Aug 2021 11:43:39 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Прочесть таблицу новости через LUA</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message56995/topic3776/">Прочесть таблицу новости через LUA</a></b> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			<br />====quote====<br /><a class="blog-p-user-name" id="bp_vfQDAjw5" href="/user/14299/" bx-tooltip-user-id="14299">Владимир</a> написал:<br /><br />Для меня вот совершенно очевидно, что тип integer обязан быть в языке - это первый язык, который я встретил за долгие годы программирования, в котором его нет! И что? Его нет и не будет - как ни аргументируй.<br /><br /><br />=============<br /><br />про ассемблер слышал разработчик операционных систем? А про Forth? &nbsp;Неужели про Бейсик тоже не в курсах? И про все остальные скриптовые языки со слабой типизацией тоже нет? Никогда не использовали sql ?<br /><br />языков , которых по вашему мнению не существует, абсолютное &nbsp;большинство.<br /><br /><br />какие интересные операционные системы... <br />
			<i>04.08.2021 11:42:39, s_mike@rambler.ru.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message56995/topic3776/</link>
			<guid>http://forum.quik.ru/messages/forum10/message56995/topic3776/</guid>
			<pubDate>Wed, 04 Aug 2021 11:42:39 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Прочесть таблицу новости через LUA</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message56993/topic3776/">Прочесть таблицу новости через LUA</a></b> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			<a class="blog-p-user-name" id="bp_GxQHD1GR" href="/user/82/" bx-tooltip-user-id="82">swerg</a>, Вообще-то, любое высказывание следует аргументировать - даже самые очевидные вещи. Ибо то, что очевидно для Вас, может быть совершенно не очевидно для собеседника. Тем более, что это не личка, а форум. Для меня вот совершенно очевидно, что тип integer обязан быть в языке - это первый язык, который я встретил за долгие годы программирования, в котором его нет! И что? Его нет и не будет - как ни аргументируй.<br /><br />Для меня вот Ваше высказывание &quot;не должно быть никакой привязки к визуальной таблице&quot; не только не очевидно, но я вообще считаю его бредом сивой кобылы. Равно как и &quot;должен быть чисто программный интерфейс на манер CreateDataSouce c последующим вызовом call-back функции на каждую новость&quot;. Худшего интерфейса, чем CreateDataSouce ещё поискать! Тем более, что все &quot;свечные&quot; утилиты лежат в разделе &quot;функции для работы с графиками&quot;. ПРИ ЧЁМ ТУТ ВАЩЕ ГРАФИКИ?!<br /><br />Что такое &quot;визуальная таблица&quot;, я не знаю, и знать не хочу. Не бывает в природе никаких &quot;визуальных таблиц&quot;! Вот, скажем, ТТТ - основная таблица, с которой работает мой скрипт - она какая, визуальная? Да, чего-то там мельтешит в отдельной вкладке, но я туда и не заглядываю никогда - она мне нужна только для заказа данных по интересующему меня набору тикеров. А вот скрипт мой постоянно там ковыряется, ибо &quot;привязан к визуальной таблице&quot;. <img src="http://forum.quik.ru/upload/main/smiles/5/icon_smile.png" border="0" data-code=":smile:" data-definition="SD" alt=":smile:" style="width:16px;height:16px;" title="С улыбкой" class="bx-smile" /> <br /><br />Предложение Олега разумно: должен быть удобный и унифицированный доступ к любым данным любых таблиц (исключая какие-нибудь секретные и служебные поля), и таблица новостей НИЧЕМ в этом плане не отличается от любой другой таблицы: те же строки, только вид сбоку. <br />
			<i>04.08.2021 10:49:50, Владимир.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message56993/topic3776/</link>
			<guid>http://forum.quik.ru/messages/forum10/message56993/topic3776/</guid>
			<pubDate>Wed, 04 Aug 2021 10:49:50 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Прочесть таблицу новости через LUA</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message56987/topic3776/">Прочесть таблицу новости через LUA</a></b> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			<br />====quote====<br /><a class="blog-p-user-name" id="bp_dP0C11Rq" href="/user/14827/" bx-tooltip-user-id="14827">Олег</a> написал:<br /> <br />====quote====<br /><noindex><a href="/user/82/" target="_blank" rel="nofollow">swerg</a></noindex> написал:<br />Не должно быть никакой привязки к визуальной таблице<br />=============<br />Не нравятся мне безапелляционные сообщения подобного рода. Если Вы так пишите - аргументируйте. <br />=============<br /><br />Каковы ваши цели?<br />И где аргументация с вашей стороны? <br />Есть ваше мнение общие рассуждения по поводу "решение должно быть быстро реализуемым", "удобным для большого количества пользователей QUIK". На речи депутатов похоже, общие слова "за мир во всем мире".<br /><br />Что вам нужно аргументировать? то, что в скрипте должен быть контролируемый полностью доступ к данным? Считаю, что это очевидно.<br />Или быть может вас устраивает ситуация, когда сейчас чтобы получить свечей приходилось бы открывать графики, задавать на них какие-то "идентификаторы", лазить по меню и что-то нам настраивать чтобы в скрипте в итоге поехал поток данных? это удобно??<br />Очевидно же что нет.<br />Так что требуется аргументировать?<br /><br />И, главное, с чего вы считаете, что я для вас что-то должен аргументировать? <br />
			<i>04.08.2021 00:02:43, swerg.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message56987/topic3776/</link>
			<guid>http://forum.quik.ru/messages/forum10/message56987/topic3776/</guid>
			<pubDate>Wed, 04 Aug 2021 00:02:43 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Прочесть таблицу новости через LUA</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message56968/topic3776/">Прочесть таблицу новости через LUA</a></b> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			<br />====quote====<br /><a class="blog-p-user-name" id="bp_P2Q5bvHA" href="/user/82/" bx-tooltip-user-id="82">swerg</a> написал:<br />Не должно быть никакой привязки к визуальной таблице<br />=============<br />Не нравятся мне безапелляционные сообщения подобного рода. Если Вы так пишите - аргументируйте. <br /><br />Я исхожу из того, что решение должно быть быстро реализуемым и удобным для большого количества пользователей QUIK, использующих QLUA в своих целях, а не для узкого круга супер-пупер программеров, пишущих на заказ... С таким подходом, который Вы озвучили, вообще не надо никакого интерфейса - достаточно получать котировки. <br /><br />...Хотя, если разработчик сочтет Ваш вариант более подходящим, то не имею ничего против, главное, чтобы это не затянулось по времени и работало. <br />
			<i>03.08.2021 13:01:10, Олег.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message56968/topic3776/</link>
			<guid>http://forum.quik.ru/messages/forum10/message56968/topic3776/</guid>
			<pubDate>Tue, 03 Aug 2021 13:01:10 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Прочесть таблицу новости через LUA</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message56942/topic3776/">Прочесть таблицу новости через LUA</a></b> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			Не должно быть никакой привязки к визуальной таблице<br />Должен быть чисто программный интерфейс на манер CreateDataSouce c последующим вызовом call-back функции на каждую новость.<br />И API перебора всех уже имеющихся новостей. <br />
			<i>02.08.2021 19:26:59, swerg.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message56942/topic3776/</link>
			<guid>http://forum.quik.ru/messages/forum10/message56942/topic3776/</guid>
			<pubDate>Mon, 02 Aug 2021 19:26:59 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Прочесть таблицу новости через LUA</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message56941/topic3776/">Прочесть таблицу новости через LUA</a></b> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			Добрый день!<br /><br /><a class="blog-p-user-name" id="bp_9ckOMdf3" href="/user/14250/" bx-tooltip-user-id="14250">Roman Azarov</a>, Идея то хорошая.<br /><br />Вот пожелание на доработку:<br />-надо иметь возможность задать идентификатор для конкретной таблицы новостей (как для графиков), так как таблиц с новостями можно открыть много и на каждую из них повесить свой фильтр и свой идентификатор.<br />-нужна возможность программно обратиться к таблице по идентификатору, перебрать строки-новости в составе полей (Дата, Время, Агентство, Заголовок, Новость) и в переменную засунуть нужную мне новость.<br /><br />А все остальное можно получить оттуда строковыми функциями и проанализировать.<br /><br />Думаю, это для вас абсолютно не сложно, тем более такой функционал есть для всех остальных основных таблиц - ничего не надо придумывать. Только идентификатор таблицы добаить. &nbsp; <br /><br />Зачем нужна возня с какими-то внешними компонентами, если это можно будет спокойно реализовать на QLUA ?! <br />
			<i>02.08.2021 19:20:27, Олег.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message56941/topic3776/</link>
			<guid>http://forum.quik.ru/messages/forum10/message56941/topic3776/</guid>
			<pubDate>Mon, 02 Aug 2021 19:20:27 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Прочесть таблицу новости через LUA</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message52376/topic3776/">Прочесть таблицу новости через LUA</a></b> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			<a class="blog-p-user-name" id="bp_smBX2qMC" href="/user/12263/" bx-tooltip-user-id="12263">Александр</a>, добрый день!<br /><br />На текущий момент подобного API нет.<br />Можем зарегистрировать пожелание на доработку. Для этого просим подробнее описать желаемый функционал. <br />
			<i>01.02.2021 07:10:47, Roman Azarov.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message52376/topic3776/</link>
			<guid>http://forum.quik.ru/messages/forum10/message52376/topic3776/</guid>
			<pubDate>Mon, 01 Feb 2021 07:10:47 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Прочесть таблицу новости через LUA</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message52335/topic3776/">Прочесть таблицу новости через LUA</a></b> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			а что-то изменилось за годы? появилось какое то простое api для работы с новостями?<br />или это очень трудно реализуемо ... <br />
			<i>29.01.2021 21:52:32, Александр.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message52335/topic3776/</link>
			<guid>http://forum.quik.ru/messages/forum10/message52335/topic3776/</guid>
			<pubDate>Fri, 29 Jan 2021 21:52:32 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Прочесть таблицу новости через LUA</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message32249/topic3776/">Прочесть таблицу новости через LUA</a></b> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			<br />====quote====<br /><a class="blog-p-user-name" id="bp_wYfTVRqD" href="/user/12249/" bx-tooltip-user-id="12249">Юрий</a> написал:<br />Я точно не помню, посмотрите в настройках квика, нет ли там опции читать все новости с сервера и сохранять. Я тело новости не парсил, мне нужны были только заголовки.<br />=============<br />Есть флажок «Запрашивать тело новости вместе с заголовком». Но надо проверять, то или не то. Может и запрашивает, но в файл news.log не будет сохранять. <br />
			<i>16.07.2018 20:01:43, Suntor.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message32249/topic3776/</link>
			<guid>http://forum.quik.ru/messages/forum10/message32249/topic3776/</guid>
			<pubDate>Mon, 16 Jul 2018 20:01:43 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Прочесть таблицу новости через LUA</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message32248/topic3776/">Прочесть таблицу новости через LUA</a></b> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			<br />====quote====<br /><a class="blog-p-user-name" id="bp_VSk24xoo" href="/user/12210/" bx-tooltip-user-id="12210">null</a> написал:<br />Вот самый стабильный вариант.<br />=============<br />1. Не злоупотребляйте new/delete операциями. Это очень тяжёлые ресурсоёмкие операции, которые приводят к вызову системных ф-ций выделения памяти из кучи и пр. При этом исполняется код объёмом под 150 КБ... поэтому, всегда нужно стараться использовать обычные переменные на стеке, память под которые выделяется всего одной инструкцией процессора записи в регистр указателя стека... Я уже выше писал об этом про структуры. Но тоже самое касается и массивов с константным размером. Например ваш код:
====code====
<pre>wchar_t *cname = new wchar_t&#91;128&#93;;
if(GetClassName(hwnd, cname, 128) &#38;&#38; !wcscmp(cname, L"InfoNews"))
...
delete&#91;&#93; cname;
</pre>
=============
можно ускорить в сотни раз:
====code====
<pre>wchar_t cname&#91;256&#93;;
if(GetClassName(hwnd, cname, _countof(cname)) &#38;&#38; !wcscmp(cname, L"InfoNews"))</pre>
=============
<br />2. Максимальный размер имени класса окна в WNDCLASSEX равен 256, а не 128.<br /><br />3. Ещё раз посмотрел весь код, и та же мысль... ну не так. Вообще не нужно количество новостей из заголовка вытаскивать. И мышка не нужна. И координаты не нужны. Нужно:<br />• нажать Ctrl+End (окно прокрутится вниз, и выделится самая последняя новость), а затем Enter (новость появится в RichEdit20A);<br />• далее в цикле идти вверх, нажимать UpArrow+Enter, читая новости и считая их количество и следя за сдвигом ползунка;<br />• в самом верху, как только позиция ползунка обнулилась, выходим из цикла;<br />В итоге, все новости прочитаны и их количество подсчитано. Да ещё в придачу, если в момент нашего цикла пришла новая новость, то ничего страшного, к моменту прихода нашего цикла вверх, она также обработается и подсчитается.<br /><br />4. Про разбор даты, агентства и заголовка. Посмотрел формат там у всех агентств разный. Поэтому, если и делать разбор, то нужно сначала пробежать по новости, и поискать там ключевые слова: «ПРАЙМ», «Interfax» и пр.. То-есть, определить новостное агентство. И уже затем, для каждого из них, разбирать отдельно. У Интерфакса, за вычетом пустых строк, идёт в первой строчке дата, во второй ключ. слова, в следующей заголовок, и далее тело. Для ПРАЙМ всё слитно, вначале дата, и далее сразу тело новости без заголовка. Ну и т.д. Тут конечно можно поизвращаться, но что-то красивое и универсальное не сделать, скорее всего... <br />
			<i>16.07.2018 19:49:07, Suntor.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message32248/topic3776/</link>
			<guid>http://forum.quik.ru/messages/forum10/message32248/topic3776/</guid>
			<pubDate>Mon, 16 Jul 2018 19:49:07 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Прочесть таблицу новости через LUA</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message32246/topic3776/">Прочесть таблицу новости через LUA</a></b> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			<br />====quote====<br /><a class="blog-p-user-name" id="bp_gLvTvaj8" href="/user/901/" bx-tooltip-user-id="901">Suntor</a> написал:<br /><br />====quote====<br /> Юрий &nbsp; написал:<br />Покопался в архивах, раньше файл назывался news.log, возможно название изменилось. Файл начинается с INFONEWS, строки оканчиваются нулём. <br />=============<br />Идея хорошая... смущает только одна вещь. Посмотрел у себя этот файл, и такое впечатление, что там только заголовки новостей и те новости, которые читались. То-есть, если в окне новостей щёлкнуть на новость и её текст появится в <br />RichEdit20A, то он сохраняется в news.log. А если новость не читали, то её нет в news.loЯ <br /><br />=============<br />Я точно не помню, посмотрите в настройках квика, нет ли там опции читать все новости с сервера и сохранять. Я тело новости не парсил, мне нужны были только заголовки. <br />
			<i>16.07.2018 19:19:20, Юрий.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message32246/topic3776/</link>
			<guid>http://forum.quik.ru/messages/forum10/message32246/topic3776/</guid>
			<pubDate>Mon, 16 Jul 2018 19:19:20 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Прочесть таблицу новости через LUA</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message32241/topic3776/">Прочесть таблицу новости через LUA</a></b> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			Вот самый стабильный вариант. Осталось решить одну проблему - первые пару новых не прочитанных новостей читаются пустым, при повторном запуске читаются нормально. Хотя не особо проблема.<br />Принцип работы с заголовка парсится количество новостей(в окне). Дальше перебираем каждую строку до количества новостей. Осталось спарсить дату, агенство, заголовок. Есть идеи?<br /><br />
====code====
<pre>#include "stdafx.h"
#include &#60;Windows.h&#62;
#include &#60;iostream&#62;
#include &#60;string&#62;
#include &#60;immintrin.h&#62;
#include &#60;fstream&#62;
#include &#60;ctime&#62;
#include &#60;regex&#62;

HWND hNews = nullptr;

BOOL CALLBACK EnumChildProc(HWND hwnd, LPARAM lParam)
{
&nbsp;&nbsp;&nbsp;wchar_t *cname = new wchar_t&#91;128&#93;;
&nbsp;&nbsp;&nbsp;if(GetClassName(hwnd, cname, 128) &#38;&#38; !wcscmp(cname, L"InfoNews"))
&nbsp;&nbsp;&nbsp;{
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;hNews = hwnd;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;delete&#91;&#93; cname;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return false;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
&nbsp;&nbsp;&nbsp;}

&nbsp;&nbsp;&nbsp;delete&#91;&#93; cname;
&nbsp;&nbsp;&nbsp;return true;
}

std::uint32_t crc32c(const wchar_t* buf, size_t len)
{
&nbsp;&nbsp;&nbsp;std::uint32_t crc = ~0U;

&nbsp;&nbsp;&nbsp;if (len == 0) return crc;

#if defined(__x86_64__) || defined(_M_X64)
&nbsp;&nbsp;&nbsp;while (len &#62;= 8)
&nbsp;&nbsp;&nbsp;{
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;crc = _mm_crc32_u64(crc, *reinterpret_cast&#60;const std::uint64_t*&#62;(buf)) &#38; 0xffffffff;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;len -= 8;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;buf += 8;
&nbsp;&nbsp;&nbsp;}
#endif

&nbsp;&nbsp;&nbsp;while (len &#62;= 4)
&nbsp;&nbsp;&nbsp;{
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;crc = _mm_crc32_u32(crc, *reinterpret_cast&#60;const std::uint32_t*&#62;(buf));
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;len -= 4;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;buf += 4;
&nbsp;&nbsp;&nbsp;}

&nbsp;&nbsp;&nbsp;while (len &#62;= 2)
&nbsp;&nbsp;&nbsp;{
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;crc = _mm_crc32_u16(crc, *reinterpret_cast&#60;const std::uint16_t*&#62;(buf));
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;len -= 2;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;buf += 2;
&nbsp;&nbsp;&nbsp;}
&nbsp;&nbsp;&nbsp;while (len &#62;= 1)
&nbsp;&nbsp;&nbsp;{
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;crc = _mm_crc32_u8(crc, *reinterpret_cast&#60;const std::uint8_t*&#62;(buf));
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;len -= 1;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;buf += 1;
&nbsp;&nbsp;&nbsp;}

&nbsp;&nbsp;&nbsp;return crc;
}

int main()
{
&nbsp;&nbsp;&nbsp;const std::locale locale("Russian_Russia");
&nbsp;&nbsp;&nbsp;std::locale::global(locale);

&nbsp;&nbsp;&nbsp;std::wofstream LogFile("C:&#92;&#92;tools&#92;&#92;news.txt", std::ios::out);
&nbsp;&nbsp;&nbsp;if (!LogFile.good())
&nbsp;&nbsp;&nbsp;{
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return 1;
&nbsp;&nbsp;&nbsp;}
&nbsp;&nbsp;&nbsp;const HWND hWnd = FindWindow(L"InfoClass", nullptr);


&nbsp;&nbsp;&nbsp;EnumChildWindows(hWnd, EnumChildProc, 0);
&nbsp;&nbsp;&nbsp;if (hNews != nullptr)
&nbsp;&nbsp;&nbsp;{
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;const HWND hMulti = FindWindowEx(hNews, nullptr, L"MultiList", nullptr);
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;const HWND hRich = FindWindowEx(hNews, nullptr, L"RichEdit20A", nullptr);

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if (hRich != nullptr &#38;&#38; hMulti != nullptr)
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;SendMessage(hMulti, WM_VSCROLL, SB_TOP, 0);
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;SendMessage(hMulti, WM_VSCROLL, SB_LINEDOWN, 0);

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;const size_t height = GetScrollPos(hMulti, SB_VERT);

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if (height &#60; 1)
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;std::cout &#60;&#60; "Ошибка получения высоты линии!" &#60;&#60; std::endl;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return 1;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;RECT* rect = new RECT();
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if (!GetClientRect(hMulti, rect))
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;std::cout &#60;&#60; "Ошибка получения GetClientRect!" &#60;&#60; std::endl;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return 1;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}


&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;const size_t centr = (rect-&#62;right - rect-&#62;left - 200) / 2;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;size_t count = 0;

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;delete rect;

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;SendMessage(hMulti, WM_VSCROLL, SB_TOP, 0);
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;srand(time(nullptr) &#38; 0xffffffff);

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;PostMessage(hMulti, WM_ACTIVATE, WA_ACTIVE, 0);
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;SendMessage(hMulti, WM_SETFOCUS, 0, 0);

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;const size_t tlen = SendMessage(hNews, WM_GETTEXTLENGTH, NULL, NULL);
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;wchar_t* title = new wchar_t&#91;tlen + 1&#93;;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;SendMessage(hNews, WM_GETTEXT, tlen + 1, LPARAM(title));

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;const std::regex re("(&#92;&#92;d+).*?(&#92;&#92;d+)&#92;&#92;;");

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;std::wstring ws(title);
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;const std::string line(ws.begin(), ws.end());

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;std::smatch match;

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if (std::regex_search(line, match, re))
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;const std::string num = match&#91;2&#93;;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;std::cout &#60;&#60; "Количество Новостей: ";
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;std::cout &#60;&#60; num &#60;&#60; std::endl;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;count = std::stoi(num);
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;delete&#91;&#93; title;

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;// Перемещаем курсор на строку первой новости.
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;const size_t x = centr + rand() % 50;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;const size_t y = height + 3 + rand() % (height - 3);
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;const LPARAM pos = MAKELPARAM(x, y);

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;SendMessage(hMulti, WM_MOUSEMOVE, 0, pos);
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;// Клик по первой новости
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;SendMessage(hMulti, WM_LBUTTONDOWN, MK_LBUTTON, pos);
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;// Отпускаем левую кнопку мыши
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;SendMessage(hMulti, WM_LBUTTONUP, 0, pos);

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;// Жмем return
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;SendMessage(hMulti, WM_KEYDOWN, VK_RETURN, 0x001C0001);
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;SendMessage(hMulti, WM_KEYUP, VK_RETURN, 0x001C0001);

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;size_t current_LEN = SendMessage(hRich, WM_GETTEXTLENGTH, NULL, NULL);
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;wchar_t* buff = new wchar_t&#91;current_LEN + 1&#93;;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;SendMessage(hRich, WM_GETTEXT, current_LEN + 1, LPARAM(buff));
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;size_t current_CRC = crc32c(buff, current_LEN);
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;LogFile &#60;&#60; L"&#92;r&#92;nНомер: 1 Длина: " + std::to_wstring(current_LEN) + L" CRC: " + std::to_wstring(current_CRC)
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;+ L"&#92;r&#92;n" &#60;&#60; std::endl;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;LogFile &#60;&#60; buff &#60;&#60; std::endl;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;delete&#91;&#93; buff;

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;for (size_t i = 2; i &#60;= count; i++)
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;SendMessage(hMulti, WM_KEYDOWN, VK_DOWN, 0x01500001);
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;// Жмем стрелочку вниз
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;SendMessage(hMulti, WM_KEYUP, VK_DOWN, 0xC1500001);

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;// Жмем return
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;SendMessage(hMulti, WM_KEYDOWN, VK_RETURN, 0x001C0001);
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;SendMessage(hMulti, WM_KEYUP, VK_RETURN, 0x001C0001);

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;current_LEN = SendMessage(hRich, WM_GETTEXTLENGTH, NULL, NULL);
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;wchar_t* nbuff = new wchar_t&#91;current_LEN + 1&#93;;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;SendMessage(hRich, WM_GETTEXT, current_LEN + 1, LPARAM(nbuff));
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;current_CRC = crc32c(nbuff, current_LEN);
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;LogFile &#60;&#60; L"&#92;r&#92;nНомер: " + std::to_wstring(i) + L" Длина: " + std::to_wstring(current_LEN) + L" CRC: "
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;+ std::to_wstring(current_CRC) + L"&#92;r&#92;n" &#60;&#60; std::endl;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;LogFile &#60;&#60; nbuff &#60;&#60; std::endl;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;delete&#91;&#93; nbuff;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Sleep(1);
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}


&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;SendMessage(hMulti, WM_KILLFOCUS, 0, 0);
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;PostMessage(hMulti, WM_ACTIVATE, WA_INACTIVE, 0);

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;std::cout &#60;&#60; count &#60;&#60; std::endl;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}
&nbsp;&nbsp;&nbsp;}
&nbsp;&nbsp;&nbsp;LogFile.close();
&nbsp;&nbsp;&nbsp;std::cout &#60;&#60; "done" &#60;&#60; std::endl;
&nbsp;&nbsp;&nbsp;return 0;
}


</pre>
============= <br />
			<i>16.07.2018 12:44:03, null.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message32241/topic3776/</link>
			<guid>http://forum.quik.ru/messages/forum10/message32241/topic3776/</guid>
			<pubDate>Mon, 16 Jul 2018 12:44:03 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Прочесть таблицу новости через LUA</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message32233/topic3776/">Прочесть таблицу новости через LUA</a></b> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			<br />====quote====<br /><a class="blog-p-user-name" id="bp_B2ki4Dj2" href="/user/12249/" bx-tooltip-user-id="12249">Юрий</a> написал:<br />Покопался в архивах, раньше файл назывался news.log, возможно название изменилось. Файл начинается с INFONEWS, строки оканчиваются нулём. <br />=============<br />Идея хорошая... смущает только одна вещь. Посмотрел у себя этот файл, и такое впечатление, что там только заголовки новостей и те новости, которые читались. То-есть, если в окне новостей щёлкнуть на новость и её текст появится в <br />RichEdit20A, то он сохраняется в news.log. А если новость не читали, то её нет в news.log. <br />
			<i>16.07.2018 09:31:12, Suntor.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message32233/topic3776/</link>
			<guid>http://forum.quik.ru/messages/forum10/message32233/topic3776/</guid>
			<pubDate>Mon, 16 Jul 2018 09:31:12 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Прочесть таблицу новости через LUA</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message32231/topic3776/">Прочесть таблицу новости через LUA</a></b> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			<br />====quote====<br /><a class="blog-p-user-name" id="bp_l8pMbSh6" href="/user/12249/" bx-tooltip-user-id="12249">Юрий</a> написал:<br />Я не знаю, можно ли через LUA разбирать текстовые файлы. Лет 5 назад надо было парсить появление новостей в квике. В директории квика есть файл с новостями. Я вызывал системный класс, ловящий изменение файла в системе. Получив событие просто текстово парсил файл. Какой именно сейчас не вспомню, он увесистый, если в настройках выставить хранить новости несколько дней то ббудет несколько мегабайт. Я не разбирался как там раскодировать дату сообщений, но заголовок и текст довольно легко достаются. Помоему это куда проще чем то что вы описываете выше.<br />=============<br />Тоже думал над этим, спасибо. Бегло прошелся хекс редактором, показалось там не полный текст новости. Попробую на досуге еще раз поковырять файл. Дата вероятно там упаковывается в DWORD. <br />
			<i>15.07.2018 22:01:02, null.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message32231/topic3776/</link>
			<guid>http://forum.quik.ru/messages/forum10/message32231/topic3776/</guid>
			<pubDate>Sun, 15 Jul 2018 22:01:02 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Прочесть таблицу новости через LUA</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message32230/topic3776/">Прочесть таблицу новости через LUA</a></b> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			Покопался в архивах, раньше файл назывался news.log, возможно название изменилось. Файл начинается с INFONEWS, строки оканчиваются нулём.<br />Вот немного полезной инфы про отслеживания за изменениями файлов в директории <noindex><a href="https://habr.com/post/164775/" target="_blank" rel="nofollow">https://habr.com/post/164775/</a></noindex> <br />
			<i>15.07.2018 16:37:24, Юрий.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message32230/topic3776/</link>
			<guid>http://forum.quik.ru/messages/forum10/message32230/topic3776/</guid>
			<pubDate>Sun, 15 Jul 2018 16:37:24 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Прочесть таблицу новости через LUA</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message32229/topic3776/">Прочесть таблицу новости через LUA</a></b> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			Я не знаю, можно ли через LUA разбирать текстовые файлы. Лет 5 назад надо было парсить появление новостей в квике. В директории квика есть файл с новостями. Я вызывал системный класс, ловящий изменение файла в системе. Получив событие просто текстово парсил файл. Какой именно сейчас не вспомню, он увесистый, если в настройках выставить хранить новости несколько дней то ббудет несколько мегабайт. Я не разбирался как там раскодировать дату сообщений, но заголовок и текст довольно легко достаются. Помоему это куда проще чем то что вы описываете выше. <br />
			<i>15.07.2018 16:05:13, Юрий.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message32229/topic3776/</link>
			<guid>http://forum.quik.ru/messages/forum10/message32229/topic3776/</guid>
			<pubDate>Sun, 15 Jul 2018 16:05:13 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>Прочесть таблицу новости через LUA</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message32222/topic3776/">Прочесть таблицу новости через LUA</a></b> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			<br />====quote====<br /><a class="blog-p-user-name" id="bp_lk97sCEm" href="/user/12210/" bx-tooltip-user-id="12210">null</a> написал:<br />был какой-то глюк со свернутым окном, просто не находил InfoNews<br />=============<br />свёрнутось окна не должна влиять, глюк был в чём-то другом... берите самое верхнее окно и от него делайте перебор детей... всё должно работать <br />
			<i>13.07.2018 23:07:35, Suntor.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message32222/topic3776/</link>
			<guid>http://forum.quik.ru/messages/forum10/message32222/topic3776/</guid>
			<pubDate>Fri, 13 Jul 2018 23:07:35 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
	</channel>
</rss>
