Serge123 (Все сообщения пользователя)

Выбрать дату в календареВыбрать дату в календаре

Страницы: Пред. 1 2 3 4 5 6 7 След.
Более быстрый перебор ключ - значение в таблице
 
Старый lobject.h попался, вот для Lua 5.4:
https://www.lua.org/source/5.4/lobject.h.html
Более быстрый перебор ключ - значение в таблице
 
Вот загадочное и интересное сообщение: https://forum.quik.ru/messages/forum10/message34083/topic3921/#message34083
См. также typedef struct Table в https://www.lua.org/source/5.1/lobject.h.html
Можно ли как-то получить адрес этой структуры таблицы в программе на Lua и C, чтобы, скажем, напрямую читать
TValue *array;  /* array part */ ?
Т.е. в случае C минуя rawgeti и стек Lua?
Более быстрый перебор ключ - значение в таблице
 
Т.к. экономия происходит за счёт вызова функции pairs, которая в цикле вызывается лишь 1 раз.
Более быстрый перебор ключ - значение в таблице
 
Прверял на таблице из 10-ти элементов. Если элементов будет больше, думаю, выигрыш во времени будет меньше.
Более быстрый перебор ключ - значение в таблице
 
Сейчас обнаружил, что перебор в форме
Код
 for key, val in next, t do
  local k = key
  local v=val
 end
Работает ~ на 10% быстрее, чем в распространённой форме
Код
 for key, val in pairs(t) do
  local k = key
  local v=val
 end
Схема торговой программы
 
Кто-то может рассказать об удачной схеме работы торговой программы (без дорогих сердцу торговых стратегий), чтобы потом не переделывать своё изобретение? Я пока не знаю, как это всё в сумме организовывать и с какой стороны подходить... Торговать лучше по индикаторам или как-то ещё?
Lua таблицу в файл и обратно
 
Что ты на меня бочку покатил? С Владимир спутал? Я похвалил твой пример.
Cкорость обмена данными через файлы
 
А если диск виртуальный, то как по сравнению с маппинг филес?
Lua таблицу в файл и обратно
 
Гениально, шеф (С). Здесь я увидел, кажется, то же самое, но длиннее:
bot4sale.ru/blog-menu/qlua/300-table-tostring.html
Рассчитать текущую цену от ММ на начало торгов
 
На этапе выставления заявок (напр., с 9:50 по 9:56) скрипт ММ смотрит на них и устанавливает текущую цену так, чтобы было совершено наибольшее число сделок. Можно ли как-то скриптом на Луа вычислить эту цену по информации о заявках в стакане, чтобы вовремя в неё встать? Есть ли такой алгоритм?
Примеры dll на GCC 64 для работы со скриптом
 
Это не то: GetSystemTimePreciseAsFileTime выдаёт время в UTC (число 100 нс интервалов с 1 января 1601 г. по текущее время). Теперь надо получить из него часы, минуты, секунды и микросекунды с десятыми с часами для локального времени. Я уже почти написал программку для этого перевода, но вроде бы должна быть готовая в какой-нибудь библиотеке для Си...
Примеры dll на GCC 64 для работы со скриптом
 
А как мне в Си перевести вывод функции GetSystemTimePreciseAsFileTime в часы, минуты, секунды и микросекунды?
Примеры dll на GCC 64 для работы со скриптом
 
Спасибо, интересная информация.
Скрипт оповещения значения спреда между двумя инструментами
 
См. на luaq.ru:
Функции для получения значений Таблицы текущих торгов
getParamEx
getParamEx2
Здесь на форуме публиковались параметры для этих функций.

Функции обратного вызова
OnParam

Что-то сделать скрипт может, запустив внешнюю программу через os.execute. Вот здесь хороший справочник по функциям:
gammon.com.au/scripts/doc.php
Мой робот
 
По картинке робота я не смог понять, насколько он прибылен...
Мой робот
 
А что конкретно даёт эта OnParam? Я сейчас глянул https://luaq.ru/OnParam.html и не понял, как узнать, какие параметры изменились? Их же вагон с тележкой... :sad:  
Мой робот
 
Какой уровень дохода прогнозируется? Сколько %% годовых чистыми от начального депозита?  :cool:  
Примеры dll на GCC 64 для работы со скриптом
 
Уточнение: на си я получаю текущее время моего ПК через GetLocalTime, три часа разницы...
Примеры dll на GCC 64 для работы со скриптом
 
Цитата
nikolz написал:
lua_tonumber и lua_tointeger  в версиях от 5.3 - это разные форматы.  double и long.
А в Lua 5.4 одинаковые? Как это узнать?

Я для интереса написал в длл на си "ядерную триаду": обработчики OnAllTrade и OuQuote + getQuoteLevel2. Постарался, чтобы работало как можно быстрее. В примерах, которые я видел, написано не так оптимизированно, как у меня. Неплохо было бы как-то сравнить скорости с моими аналогичными обработчиками на Lua...

Возникли такие мелкие вопросы:

1. Скрипт, который работает с этой длл, начинается так:
Код
package.loadlib(getScriptPath() .. "\\OnAllTrade.dll", "luaopen_OnAllTrade")()
require("OnAllTrade")
Я где-то увидел, что таким путём можно длл помещать в папку со скриптами вместо корневой папки Квика. Но почему-то при первом запуске скрипт не находит этой длл в папке со скриптами, поэтому длл приходится помещать в корневую папку. При последующих запусках скрипта длл можно удалить из корневой папки и размещать в папку со скриптами, это работает. Кто может объяснить этот эффект и сказать, как это исправить?

2. Можно ещё быстрее работать со стеком Луа при обработке полученных таблиц? Например, можно ли быстрее получить из таблиц bid и offer значения price и quantity (по 20 штук каждых)?

3. Я после вызова функций QLua из длл не очищаю стек, потому что он после этого вроде бы становится мусором для уборки. Достаточно следить, чтобы стек не превышал 20 элементов. Это верно?

4. В аналогичном скрипте на Луа я накапливаю информацию в переменной-строке о сделках и стаканах и после достижения, скажем, 10 Мб дописываю её в файл и потом присваиваю этой переменной пустую строку. При этом каждый раз память для неё освобождается сборщиком мусора и затем выделяется и довыделяется много раз при её заполнении информацией. А выделение памяти не быстрый процесс. На си такой проблемы нет. Можно ли на Луа работу с этим буфером вывода сделать быстрее?

5. В своём аналогичном скрипте на Луа при выводе содержимого стакана в переменную я беру текущее время через os.sysdate, она даёт даже мкс, откуда у неё такая точность? Может, лучше как-то получать время сервера брокера, это будет точнее? Кстати, на этом форуме ещё в 2015 г. просили с содержимым стакана передавать время с сервера (биржи?), когда было изменение, но почему это не сделали?
На си я для этого получаю время через GetSystemTime, там только мс, приходится дописывать к ним справа 000, чтобы был формат с мкс, как выдаёт OnAllTrade. С этим ничего нельзя поделать?
Кто-то пробовал запускать Квик на планшете?
 
Можно ли запустить торговую программу под Квиком на планшете, чтобы не напрягать настольный ПК? Если да, то что это за планшет? На сколько времени хватит аккумулятора?
Возможные "стратегии" для торговых программ
 
Цитата
paluke написал:
Только следуя за кем-то, вы всегда купите дороже, чем он, а продадите дешевле.
Продам, м.б., дешевле, чем он, а не дешевле, чем я купил.
Речь идёт о значительном росте цены, когда крупный игрок выбивает стопы у толпы, отчего цена летит.
Кодировка в таблицах Квика
 
Может быть, дело в кодировках файлов исходников .lua, или файлов, содержащих эти строки? Напр., поменять их кодировку на Win1251?
Примеры dll на GCC 64 для работы со скриптом
 
Насколько я понял, lua_tonumber и lua_tointeger это одно и то же и ничего она не преобразовывает, просто переписывает с вершины стека в заданную переменную 8 байтов?

И ещё хотел спросить: неужели с рублями и копейками работают в формате double? В этом случае при расчётах может накапливаться ошибка. Как я помню, в фин. расчётах рубли и копейки хранили в виде строк, напр. "123.456000".
Примеры dll на GCC 64 для работы со скриптом
 
Цитата
swerg написал:
Хочешь по-взрослому - и страдай тогда по-взрослому, не плачь ;)
Да у меня всё работает, просто чисто женское любопытство. :-)
Примеры dll на GCC 64 для работы со скриптом
 
Цитата
Serge123 написал:
Если на C переменной, в которую читаю flags, присвоить тип LUA_NUMBER, то транслятор выдаёт ошибку: должен быть тип целого числа.
Вернее, транслятор ошибку не выдаёт, но для выделения флагов в C придётся преобразовать тип  flags к (u)int64_t, что выглядит не очень красиво...
Примеры dll на GCC 64 для работы со скриптом
 
Поясните, почему в таблицах Квика orders, trades, ... переменная flags, хранящая битовые флаги, имеет тип NUMBER (что в переводе на C значит double), а не INTEGER? Ведь тип
LUA_NUMBER это double (64 бита)
LUA_INTEGER это long (64 бита)
(под 64-битовой ОС)
Эти флаги в C правильно получать функцией lua_tointeger или lua_tonumber? Вроде бы работает и то и это... Тот же вопрос насчёт поля qty.
И почему в подтаблице datetime поля также имеют тип NUMBER, а не INTEGER? Они что, внутри Lua имеют тип double?

Если на C переменной, в которую читаю flags, присвоить тип LUA_NUMBER, то транслятор выдаёт ошибку: должен быть тип целого числа.
Возможные "стратегии" для торговых программ
 
Сначала надо как-то подтвердить справедливость утверждений 1-3...
Возможные "стратегии" для торговых программ
 
> Гарантированно выигрышная стратегия: купить "голубых фишек" и облигаций.

Чем гарантирована? Вспоминается закупка народом летом в прошлом году акций газпрома и пролёт с дивидендами с выходом указа о разовом НДПИ. Сейчас Китаю в связи с эпидемией не надо будет столько нефти, и рост российского рынка акций в 2024 г. прогнозируется в 5%. И потом, сейчас как-то стрёмно держать акции по нескольку дней...

У меня есть "стратегия", которая даёт прибыль раза в 2 выше облигаций, меня интересуют стратегии, которые дадут хотя бы 5-10% в день от данных торг. программе средств.

Опытные трейдеры в прошлом году писАли, что делают 50-70% годовых. А трейдер из СПб с ягодной фамилией показывал свой аккаунт за прошлый год с прибылью почти 100% на мосбирже.

> Все выигрывать не могут.

Эти общие места давно известны. И я не "все"...

> И поэтому любая публично известная стратегия, которую каждый может использовать, заведомо проигрышная.

Не каждая и не каждый: к примеру, Рабинович не смог выиграть в лотерею с пом. своего бога, т.к. не покупал лотерейный билет. А кто-то не захочет рисковать. А кто-то решит, что это обман... У БКС в приложении есть что-то типа форума по каждой бумаге, я когда-то читал, как опытные трейдеры писали, на чём они зарабатывают в настоящий момент.

> Если бы существовала выигрышная для всех стратегия, откуда взялись бы деньги?

Ошибка в подобных общих "рассуждениях", напр., в том, что "общая для всех выигрышная стратегия" не всегда останется таковой... Напр., пока цена запампленной акции ещё не достигла потолка. И не для всех стратегия может оказаться "по зубам".
И вроде бы есть стратегия торговли "смарт мани", следуя за крупным игроком как рыба-прилипала. Вроде бы тоже публичная, не устаревающая и похожая на правду...

То All: недавно ютюб подсунул видео об Ильнуре Мухаметзянове (по кличке Татарин), который выиграл 6 чемпионатов по трейдингу:
https://www.youtube.com/watch?v=0aEbW_d7w04
https://www.youtube.com/watch?v=Yk9vgCwKeFo
Кто-то может это прокомментировать? Он, кажется, говорил там, что в 2019 г. сделал 1300% годовых, звучит, как ненаучная фантастика. При этом он говорит, что торгует только пробой, продаёт, когда цена вырастет на 1%, не ставит стопов (выходит вручную), делает сотни сделок в день (типа скальпинга). Как можно столько раз угадывать ход цены? Это противоречит учению вышеупомянутого носителя фамилии солнечной ягоды из холодного Спб... Который, кстати, говорил, что у него обучаются студенты, а также люди, пришедшие после обучения у Герчика, что он сам вначале 2 года не мог добиться прибыли, якобы покупал курсы, а потом выработал свою стратегию захода в сделки и выхода оттуда (кажется, пунктов из 8-10). На бесплатных видео он тоже кое-что рассказывает. Он снимает офис с ещё 2-мя трейдерами. Татарин тоже говорил, что много обучался у опытных трейдеров, но ему пригодилось 10% инфо от их обучения. Свою стратегию не раскрывает. Упомянул, что бывает водит цену у бумаг 3-го эшелона. Может быть, в этом секрет сверхприбыли?
Примеры dll на GCC 64 для работы со скриптом
 
Цитата
TGB написал:
От себя добавлю: возможно, для вас окажется полезным сайт  https://quikluacsharp.ru/  
Кстати, хотел найти работающий пример для разбора таблиц в длл, взял с этого сайта код quikluacsharp.ru/qlua-c-cpp-csharp/primer-realizatsii-funktsii-obratnogo-vyzova-onalltrade-vnutri-dll/
а там полная ерунда: вместо lua_pushcfunction написано lua_pushcclosure. Да и luaL_openlib уже устарела и здесь не нужен также и новый её вариант для луа 5.4. Потерял много времени...
Возможные "стратегии" для торговых программ
 
Интересно, что движок заменил слово "н. е. б. у." звёздочкой. Видимо, счёл это матом...
Возможные "стратегии" для торговых программ
 
Я освоил qlua + dll на C, теперь хочется попробовать написать торг. программку, чтобы посмотреть, на её работу. Имеются какие-то дармовые "торговые роботы" и их заготовки, которые транслятор не хочет транслировать (и есть раздутые до безобразия горы кода в районе гитхаба), не хочется тратить время, чтобы их понять, они, по-моему, делаются по принципу "на, тебе, боже, что мне негоже", а платные "роботы" - по принципу "на, тебе, платного, боже, что мне негоже". К примеру, в этой ветке кто-то опубликовал "нейросеть на луа", при этом из диалога непонятно, что это такое и стоит ли на это тратить время.

У меня пока возле головы вертятся такие возможные "стратегии" для программы:
- слежение за массой всякой макулатуры и определение начала роста цены, покупка на деньги, которые не жалко, и определение, когда это лучше продать;
- определение в начале торгов, что с какой-то радости начнут покупать/продавать, и воспользоваться этим, пока цена не ушла далеко;
- ловля кратковременной просадки цены, когда происходит крупная продажа (напр., кто-то хочет выйти из какой-то бумаги, перевести деньги в доллары и слинять из этой страны, пока не поздно).

Кто-то может подсказать (хотя бы в приват) что-то стоящее "отцу русской демократии", чьи пенсии летят по  * , коптят, и потом где-то взрываются склады террористов?..
Примеры dll на GCC 64 для работы со скриптом
 
Цитата
swerg написал:
Хотя, если честно, я бы рекомендовал писать и отлаживать алгоритмы на Lua. Это намного проще. И только если будут выявляться какие-то узкие места в производительности - что-то выносить в dll.
А что вы скажете об этих рассуждениях о qlua, которые я только что увидел на smart-lab.ru/blog/922044.php
===
Каждого, кто собирается программировать на QLua, должен сильно волновать ответ на следующий вопрос: стоит ли изучать Lua или воспользоваться некоей библиотекой (как пример QuikSharp + QuikPy) и в дальнейшем писать свои программы на другом ( скажем мягко — менее экзотическом) языке (Python, C#, С++ и т.п.).
Когда разработчики Квика встраивали Луа в  Квик, это был (Луа 5.1 х32) популярный язык с огромным количеством всяких разных библиотек, компилятором (LuaJIT), своим менеджером пакетов и большим комьюнити. Потом прошло некоторое количество времени, Луа в Квике изменился на Луа 5.4 х64 и все достоинства его превратились в тыкву. Оказалось, что это практически умирающий ( утопающий) язык, поддержка которого — дело рук самих утопающих. Кто-то успел ухватить тренд и быстренько переписал все на Python и остался конкурентноспособен ( хороший пример Torch -> PyTorch ), кто-то все проспал и утонул (ну или еще пока барахтается).
В связи с выше сказанным, очень хотелось бы выяснить, так сказать на берегу, стоит ли свеч QLua, или можно построить такого же стабильного и быстрого робота на другом языке.
===
Простых алгоритмов или несколько роботов запустить, это всё будет вполне устойчиво работать. Что-то более сложное (сотни стратегий торговых, постоянная оптимизация под рынок, с оперативным управлением и ротацией роботов) действительно пишутся уже в связке или полностью на других языках.
===
Почему так сильно тормозит ввод/изменение заявки?
 
Насколько я помню, тормоза были и до того, как я начал писать скрипты.
Примеры dll на GCC 64 для работы со скриптом
 
> Вы взяли готовую сборку или собирали самостоятельно?

Взял готовую.

> От себя добавлю: возможно, для вас окажется полезным сайт https://quikluacsharp.ru/

Спасибо, я туда уже заглядывал.
По поводу полей ввода P(rice) и Q(uantity) в стаканах.
 
> Правильно понимаем, что речь идет о полях P и Q?

Да.

> Если Вы про окно вида (См. Рис_1), то это реакция на горячие клавиши «Ctrl»+«X»- снимает все активные заявки на продажу из текущего окна котировок по данному инструменту.

На рис. 1 у Вас не окно вида, а окно сообщения. Ctrl+x вроде бы стандартно означает "вырезать":
ru.wikipedia.org/wiki/Вырезать,_копировать,_вставить

Я в стакане в поле Q выделил число, нажал Ctrl+Ins, но содержимое буфера обмена не изменилось...

> Уточните, пожалуйста, для чего Вам необходимо в поле Q (Количество инструментов) вводить числовые выражения?

Бывает нужно добавить к продаже сколько-то акций, которые были куплены по более низкой цене. И ещё бывает надо рассчитать, сколько акций, купленных взаймы у брокера, надо продать, чтобы не попасть на комиссию брокера при окончании вечерней сессии. (В этом случае нужны также умножения и деления). Я для этого пользуюсь калькулятором.
По поводу полей ввода P(rice) и Q(uantity) в стаканах.
 
Кстати, я заметил конфликт комбинаций клавиш при работе с этими полями: если выделить значение в этом поле и нажать Ctrl+x (вырезать и поместить в буфер обмена Виндовс), то возникает страшное окошко типа "Удалить все заявки?" Кроме того, желательно, чтобы работали не только комбинации Ctrl+c/Ctrl+v, но и парные к ним Ctrl+Ins/Shift+Ins. И эти поля желательно вытягивать, чтобы они занимали всю ширину стакана.

А как насчёт того, чтобы можно было вводить в поле Q числовые выражения, хотя бы бесскобочные с + и -? (Надо учесть унарные + и -).
Почему так сильно тормозит ввод/изменение заявки?
 
У меня самая свежая версия Квик, а проблема была всегда, сколько я помню. А помню, минимум, с полгода. При нажатии на клавишу при редактировании, напр., цены, задержка до появления/стирания цифры длится секунды две. Рынки/классы - обычные акции, напр., фонд ВТБ Ликвидность TQTF/LQDT.
Почему так сильно тормозит ввод/изменение заявки?
 
Такое впечатление, что при редактировании полей ввода цены/количества происходит какой-то тяжёлый счёт. Можно его как-то отменить, чтобы это работало так же быстро, как щелчок по быстрой заявке в стакане?
Робот Сетка LUA для QUIK бесплатно, Обзоры и обновления робота
 
>  Робот торгует на моём реальном счёте без вмешательств на удалённом сервере VPS. Результатом работы доволен.

Хотелось бы посмотреть видео, в котором вы заходите на свой брокерский аккаунт и показываете результаты работы за последнеи 3 года...
Хочется в биржевом стакане видеть объёмы заявок
 
Anzhelika Goncharenko, что, до сих пор не сделали?
Срок действия обычной лимитной заявки, Добавить срок действия в обычную лимитную заявку
 
А я думал, что это брокеры у себя хранят такие долгоиграющие лимитки, а также лимитки по инструментам, торги по которым закончились/ещё не начинались.
Пустая таблица позция по деньгам., На балансе есть деньги, в таблицах состояния счета, ограничения по клиентским счетам есть все данные. А в таблице позиции по деньгам пустота.
 
Да, на вкладке "Портфель ФР" таблица "Состояние счёта" через какое-то время сама заполнилась...
Программирование скриптов
 
Кстати, я как-то заметил, что если Квику задать сформировать отчёт по всем сделкам клиента (а их немного), то, пока он их 10 сек. формирует (Квик в это время слегка заблуривает окно), наблюдается потеря в получении скриптом обезличенных сделок и изменений в стакане (тоже на 10 сек.)

Необработанные сделки можно было бы ставить в очередь, чтобы потом отдать их скрипту?
Такое впечатление, что мой скрипт получения сделок и формирование отчёта Квиком не могут работать одновременно?
Квик не может использовать больше 2-х потоков? (Один для терминала и коллбэков, а другой для функции main)?
Примеры dll на GCC 64 для работы со скриптом
 
Цитата
nikolz написал:
покажите Ваш пример на C с ошибкой, исправлю.
Не понял: этот луа скрипт из предыдущего моего сообщения использует известную оболочку от swerg w32.dll, а работающий пример луа+длл на си, который транслируется gcc, на основе примера swerg, который собирался в VS, я получил ещё вчера.

Теперь меня интересует, как получать в длл таблицы от луа и разбирать их, напр., таблицу заявок и обезличенных сделок. Я несколько лет назад перешёл с Дельфи 7 на си под 64 бит и gcc, теперь неохота сидеть на 2-х стульях.

Кстати, если кто не знает, я автор книжки "Delphi и Turbo Pascal на занимательных примерах" (выходила в Питер-БХВ), а также нескольких других книжек, хотя, я программировал, как любитель, для развлечения, в основном писал для продажи англоязычные шареварные игры по своим идеям. А лет 15 назад я был монстром Perl regexp и написал о них лекции на intuit.ru и головоломную книжку, которая выносит мозги ногами вперёд (в связи с рекурсивными шаблонами и вообще). Понаходил в них и в Перле грубых ошибок, сообщал о них письмами Перл майнтайнерам, они их исправляли. К сожалению, эта узкая тема не приносит денег...
Пустая таблица позция по деньгам., На балансе есть деньги, в таблицах состояния счета, ограничения по клиентским счетам есть все данные. А в таблице позиции по деньгам пустота.
 
И "Обновить таблицу" (F5) тоже не помогало...
Пустая таблица позция по деньгам., На балансе есть деньги, в таблицах состояния счета, ограничения по клиентским счетам есть все данные. А в таблице позиции по деньгам пустота.
 
У меня только что тоже было долгое время аналогичное, CalcBuySell и getBuySellInfo тоже показывали нули, при этом приложение "ВТБ инвестиции" показывало, сколько денег и акций на счёте. Перезагружал Квик, не помогало. Минут 20 назад таблица "Состояние счёта" в Квике наконец-то заполнилась...
Примеры dll на GCC 64 для работы со скриптом
 
Спасибо, тов. swerg, за наше счастливое детство, меня сейчас интересует обмен данными между луа скриптом и длл на си.
Кстати, вчера я запустил в квике ваш пример луа скрипта из 1-го поста: https://quik2dde.ru/viewtopic.php?id=329 Получил сообщение "C stack overflow". Может быть, с 2020 г. что-то поменялось в квике?
Примеры dll на GCC 64 для работы со скриптом
 
Там, оказывается, дело было в имени: не  luaopen_mylib_funcs, что я вбрал из другого примера, а luaopen_luacdll, поэтому первоначальную сишную функцию можно оставить, поменяв у неё имя:

int __declspec(dllexport) luaopen_luacdll(lua_State *L)
{
   luaL_newlib(L, ls_lib);
   return 1;
}
Примеры dll на GCC 64 для работы со скриптом
 
И вместо
int __declspec(dllexport) luaopen_mylib_funcs(lua_State *L)
{
   luaL_newlib(L, ls_lib);
   return 1;
}

надо вставить из исходника swerg

LUALIB_API int luaopen_luacdll(lua_State *L) {
// эта функция выполнится в момент вызова require() в Lua-коде
// регистрируем реализованные в dll функции, чтобы они стали дуступны для Lua
// в Lua 5.1 и Lua 5.3 для этого предназначены разные функции
#if LUA_VERSION_NUM >= 502
luaL_newlib(L, ls_lib);
#else
luaL_openlib(L, "luacdll", ls_lib, 0);
#endif

return 1;
}
Примеры dll на GCC 64 для работы со скриптом
 
Наконец-то заработало: я не заметил совета тов. swerg вставить
#define LUA_LIB
#define LUA_BUILD_AS_DLL
до подключения заголовочных файлов для Lua.
Страницы: Пред. 1 2 3 4 5 6 7 След.
Наверх