Дмитрий Минеев (Все сообщения пользователя)

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

Страницы: 1 2 След.
Продление демо доступа
 
Здравствуйте.

Можно продлить номер счета U0132383, пожалуйста?
Продление демо доступа
 
Есть ли возможность продлевать демо доступ, чтобы не регистрироваться каждый раз и не создавать отдельные ветки каждый месяц?
Может быть стоит создать одну ветку где все желающие могли бы просить продлиться и закрепить ее вверху?
Мой аккаунт U0132383
Спасибо!
Два (и более) счетов в Quik Junior
 
Для разработки и тестирования стратегии требуется 2 счета в демо квике. Возможно ли такое и если да, то как организовать?
Функция getBuySellInfo все время возвращает nil
 
Простой пример кода:
Код
firm_id = "SPBFUT000000"
client_code = "10260"
class_code = "SPBFUT"
sec_code = "RIZ8"

result = getBuySellInfo(firm_id, client_code, class_code, sec_code, 0)

message(tostring(result.can_buy))


Какой бы я ни брал инструмент (Акции, Фьючерсы), какой бы ни брал параметр - все время получаю nil.
Demo Quik 7.18.1.20
CreateDataSource возвращает пустую таблицу, если использовать параметр param
 
Цитата
Egor Zaytsev написал:
Цитата
Дмитрий Минеев   написал:
Цитата
Egor Zaytsev   написал:
Цитата
Дмитрий Минеев   написал:
Есть какие-либо варианты еще? Может какие в квипе настройки?
Добрый день.

Пришлите архив рабочего места QUIK без ключей. Проверим.    quiksupport@arqatech.com  
Настроек дополнительных нет.
Отправил.
Добрый день.

Ответили.
Егор, вы ответили своей же цитатой
https://forum.quik.ru/messages/forum10/message27211/topic3132/#message27211
А я вам ответил своей
https://forum.quik.ru/messages/forum10/message27213/topic3132/#message27213

Я пробовал оба варианта. Точнее много разных вариантов. Вы скажите, в присланном мной архиве у вас воспроизводится ошибка? И пропадает ли она после применения вашего совета на моем архиве?
getParamEx возвращает все время 0
 
Цитата
Egor Zaytsev написал:
Добрый день.
Цитата
Это ограничения демо?
Да, верно.
А где можно прочитать список всех ограничений демо квика, перед тем как создавать темы на форуме?
getParamEx возвращает все время 0
 
В демо квике на демо сервере при запросе параметра получаю 0. Если открыть таблицу текущих торгов, то там тоже 0. Не смотря на то, что этот 0 подсвечивается то зеленым, то красным, что означает изменение параметра.
Код
function main()   
   local last_change = getParamEx('QJSIM',  'GAZP', "LASTCHANGE")
   
   message("result:" .. tostring(last_change.result) .. ", value = " .. tostring(last_change.param_value) .. ", image = " .. tostring(last_change.last_change))
   
end

Значение "OPEN" возвращает корректно, а вот "CHANGE" опять 0. Это ограничения демо?

CreateDataSource возвращает пустую таблицу, если использовать параметр param
 
Цитата
Egor Zaytsev написал:
Цитата
Дмитрий Минеев   написал:
Есть какие-либо варианты еще? Может какие в квипе настройки?
Добрый день.

Пришлите архив рабочего места QUIK без ключей. Проверим.  quiksupport@arqatech.com
Настроек дополнительных нет.
Отправил.
Условное оформление в таблицах созданных из LUA
 
Цитата
Nikolay Pavlov написал:
Добрый день.
В приведенном примере создания таблицы нет кода добавления значений в ячейки (функция SetCell). Вот выдержка из справки:
------------------------------------------------------------------------------------------------------------------------------------------------------------
BOOLEAN SetCell(NUMBER t_id, NUMBER key, NUMBER code, STRING text, NUMBER value)
Параметр «text» задает строковое представление значение параметра «value».  Параметр «value» необязательный и по умолчанию равен «0». Для столбцов со  строковыми типами данных параметр «value» не задается.   Если параметр «value» не задан для ячеек всех остальных типов, то по столбцам, содержащим такие ячейки, не будет корректно работать сортировка, фильтрация и условное форматирование  (см. Приложение 2).
------------------------------------------------------------------------------------------------------------------------------------------------------------

Именно по значению  value  происходит сравнение значений при форматировании, а значение  text  служит для визуализации значения в ячейке таблицы. Соответственно проверьте какие значения передаются в value при заполнении Вашей таблицы.
Спасибо большое. Моя невнимательность.
Условное оформление в таблицах созданных из LUA
 
Версия Quik 7.11.1.5
Код создания таблицы:
Код
table_id = AllocTable()
AddColumn(table_id, 0,    'Hist. min (HMin), (руб)',      true,   QTABLE_DOUBLE_TYPE,   17)
CreateWindow(table_id)
Пытаюсь применить условное форматирование как на скрине. И результат тоже не скрине.


Т.е. Крик считает все числа больше 10.5. То же самое с фильтром. Ставлю на эту же колонку условие "Меньше 500", но ни одна строка не исчезает. Ставлю "Больше 500" и исчезают все строки.

Еще такой вопрос: почему не смотря на то, что при инициализации таблицы я указал, что тип колонки double, перед установкой значения ячейки необходимо преобразовывать значение в строку иначе она в таблице не появляется?
CreateDataSource возвращает пустую таблицу, если использовать параметр param
 
Есть какие-либо варианты еще? Может какие в квипе настройки?
CreateDataSource возвращает пустую таблицу, если использовать параметр param
 
Цитата
Michael Bulychev написал:
Добрый день.
Проверьте код класса - 'QJSIM' есть только на тестовой системе.
Речь и идет о демо.
CreateDataSource возвращает пустую таблицу, если использовать параметр param
 
Цитата
Andrei2016 написал:
Дмитрий Минеев  ,

Указанная вами callback-функция myFunc() и не должна была сработать ни разу.
На момент компиляции строки ds:SetUpdateCallback(myFunc) у вас myFunc содержит значение nil. Поэтому дальше все действия определяются именно этим.
Вам необходимо переместить тело callback-функции, так, чтобы она располагалась в коде скрипта до ее фактического упоминания или вызова.
Вы в корне не правы. Пример для вас (стрелкой пометил место отличия скрипта в топике):
CreateDataSource возвращает пустую таблицу, если использовать параметр param
 
Цитата
Egor Zaytsev написал:
Дмитрий, Ваш скрипт работает.
Пришлите скриншот графика. Чтобы было видно не только свечи, но и его название.
http://take.ms/LBh6F
Наверно короткие ссылки не работают для картинок.
CreateDataSource возвращает пустую таблицу, если использовать параметр param
 
Цитата
Egor Zaytsev написал:
Дмитрий, Ваш скрипт работает.
Пришлите скриншот графика. Чтобы было видно не только свечи, но и его название.
CreateDataSource возвращает пустую таблицу, если использовать параметр param
 
Цитата
Egor Zaytsev написал:
Добрый день.

Сам параметр bid в таблице текущих торгов присутствует, данные на графике есть?
Проверьте еще настройку:
пункт меню Система/Настройки/Основные настройки/Программа/Получение данных/
и выберите пункт "Исходя из настроек открытых пользователем таблиц"
Параметр bid в таблице есть и он меняется. График тоже рисуется. Пункт "Исходя из настроек открытых пользователем таблиц" не был установлен. Установил, перезапустил квик - результат тот же.
CreateDataSource возвращает пустую таблицу, если использовать параметр param
 
Версия Quik 7.11.1.5.
Демо
Код примера:
Код
stopped = false

function main()   
   ds, err = CreateDataSource('QJSIM', 'GAZP', INTERVAL_M1, 'bid')
   while (err == "" or err == nil) and ds:Size() == 0 do
      sleep(5)
   end

   if err ~= "" and err ~= nil then
      message("Error: " .. err)
      return
   end

   message("size:" .. tostring(ds:Size()))
   
   ds:SetUpdateCallback(myFunc)

   while stopped ~= true do
      sleep(50)
   end
end

function myFunc(index)
   message(tostring(index))
end

На любой тикер и любой параметр param сервер возвращает пустую таблицу (т.е. ds:Size() всегда 0) пробовал выставлять sleep больше - не помогает. В любом случае должен был бы сработать callback, но ожидание в 5 минут после старта ничего не дало. Тот же самый код в версии 6 в демо quik возвращает таблицу с данными.
Есть решение для экспорта в AmiBroker x64
 
Цитата
babylon73 написал:
Приветствую!

В старой версии форума давал ссылку на информацию по созданному мной решению для экспорта данных из QUIK в AmiBroker x64, дублирую инфу здесь, если кому-то она может быт полезной:  Экспорт в AmiBroker x64

Кому нужно - стучитесь в личку или по e-mail.
Коллега, ссылка ведет на страницу с описанием успешной разработки автоматизированной торговой системы, а не на то, что указано в названии ссылки и в теме.
Падает квик на win2012R2
 
Цитата
тот самый написал:
Приведённых данных - вно недостаточно. Нужен минидамп.
http://rgho.st/79ncxqxW7
Подскажите, а чем его читают?

Цитата
тот самый написал:
Кроме того, у Вас там версия Квика 7.1.2.2 - явно устаревшая.
Советую Вам его обновить.
Как это сделать, если у брокера последней версии нет, а на офф сайте написано "Дистрибутив может использоваться для подключения к серверам Технического центра ARQA Technologies. Для подключения к серверам брокеров необходимо использовать дистрибутив, предоставленный брокером."?

Цитата
тот самый написал:
задам глупый вопрос:
Вы с системными часами, что-то делали во время работы Квика до его краша?
Нет.
Цитата
тот самый написал:
также, неплохо было бы аоспользоваться поиском:
https://www.google.ru/search?q=site:forum.quik.ru+%227.1.2.2%22&ie=utf-8&oe=utf-8&gws_rd=cr&ei=x5HZV....
Спасибо. Посмотрел, но похожих проблем не нашел.
Падает квик на win2012R2
 
Цитата
тот самый написал:
Дампы - находятся в папке квика: "dmp"
Для чистоты эксперимента очистил папку dmp, запустил квик, дождался краша. Но папка dmp, также пуста.
Вид графика = Свечи.
 
Цитата
тот самый написал:
Если речь идёт всё-таки о гистограммах - то, ДА, можно строить.
Гистрограмы на самом графике цены, не в отдельной панели. Все верно?
Падает квик на win2012R2
 
Периодически падает квик на Windows 2012 R2.
Вот с таким описанием:

Problem signature:
 Problem Event Name: APPCRASH
 Application Name: info.exe
 Application Version: 7.1.2.2
 Application Timestamp: 56d7f483
 Fault Module Name: StackHash_703e
 Fault Module Version: 6.3.9600.18194
 Fault Module Timestamp: 569515fc
 Exception Code: c0000374
 Exception Offset: PCH_92_FROM_ntdll+0x0003C7EC
 OS Version: 6.3.9600.2.0.0.16.7
 Locale ID: 1049
 Additional Information 1: 703e
 Additional Information 2: 703e5c8f7f5f646f47cc6f2ac4539596
 Additional Information 3: 8d87
 Additional Information 4: 8d878e87377747f9399d3df9a74bdbff

Read our privacy statement online:
 http://go.microsoft.com/fwlink/?linkid=280262

If the online privacy statement is not available, please read our privacy statement offline:
 C:\Windows\system32\en-US\erofflps.txt


В чем причина?
Вид графика = Свечи.
 
Цитата
Sergey Gorokhov написал:
Здравствуйте,
К сожалению в текущей реализации Lua индикаторы нельзя строить в виде свечей.
А в QPILE?
Цитата
тот самый написал:
Вы можете конкретно пояснить, что именно Вас интересует?
Версия квика 7.1.2.2. Хочу построить индикатор в виде баров. Еще точнее - гистограмму на графике, а не в отдельной панели.
Вид графика = Свечи.
 
Как при таком виде графика, в коде задавать значения индикатора в виде HLOC?
Не найден указанный модуль.
 
Цитата
Цитата
тот самый написал:
вот... схожая ситуация:

                        Вопрос: Программа, скомпилированная в Visual Studio 2013, не работает в Windows XP
                         
                         В ОС Windows 7 Home Base 32 bit установлены  Visual Studio 2008 Express и Visual Studio 2013 Ultimate. Простую  консольную программу:
Код
   # include  < iostream >   # include  < string >    int main() {   
setlocale(LC_ALL,  "Russian" );   std::cout  <  <   "Здравствуй, Мир!"  
 <  <  std::endl;   std:: cin.get (); }  
компилирую  в Visual Studio 2008 и Visual Studio 2013 с многопоточной библиотекой  времени выполнения(/MT), остальные параметры сред программирования по  умолчанию.Релиз программы TestCppVS2008.exe нормально запускается в  Windows XP, 7, 8, 8.1, а релиз программы TestCppVS2013.exe в Windows 7,  8, 8.1 запускается нормально, а при запуске в Windows XP дает сообщение,  что TestCppVS2013.exe не является приложением Win32. Подскажите,  пожалуйста, какие параметры Visual Studio 2013 нужно установить, чтобы  программа нормально запускалась в Windows XP.Реальную программу нужно  будет запускать в разных версиях Windows, включая и Windows XP. Тестовые  проекты и исполняемые файлы прикрепил.                      
                                                     






Ответ:  Спасибо огромное, помогло.
 Свойства проекта – Свойства конфигурации – Общие – Набор инструментов  платформы – выбрать Visual Studio 2013 - Windows XP (v120_xp) вместо  Visual Studio 2013


Действительно заработало.
После того, как выбрал Набор инструментов платформы = Visual Studio 2013 - Windows XP (v120_xp), получил ошибку "An Error has occurred while saving the edited properties listed below: One or more values are invalid. Value cannot be null. Parameter name: userSuppliedValue". В поле "Версия целевой платформы" указал "8.1", сохранил (после повторного открытия поля "Версия целевой платформы" и "Целевая платформа" пропали.
http://take.ms/wG3Af
В зависимостях стало вот так.
http://take.ms/merjZ

Все работает. Всем спасибо за участие!
Не найден указанный модуль.
 
Цитата
тот самый написал:
Остаётс только в самом верху - выбрать Windows - в качестве Целевой платформы. Без всяких версий.
Разбираюсь почему пропал выбор...
Не найден указанный модуль.
 
Цитата
тот самый написал:
Внимательно прочти о том, как заполняются ВСЕ поля в Свойствах Проекта!!
И...
заполни их уже наконец соответствующе.
Где прочитать, я так и не понял. Если речь идет о ссылке https://msdn.microsoft.com/ru-ru/library/jj851139.aspx, то не совсем понятно, что нужно сделать.
Создал новый проект
https://msdn.microsoft.com/ru-ru/library/jj851139.aspx
"Целевая платформа" не выбирается.
Пробовал очищать поле "Версия целевой платформы" (потому, как там ничего не выбирается больше), а сейчас вообще пропал выбор "целевой платформы" и "Версии". http://take.ms/Rl7vy
Менял поле "Набор инструментов платформы" на "Visual Studio 2015 - Windows XP (v140_xp)".
Результат тот же.
Не найден указанный модуль.
 
Цитата
тот самый написал:
Основное требование - чтоб в Dependency Walker - не было отсутствующих файлов. И тогда...
всё срастётся.
http://take.ms/PTMOp
Не срастается.
Не найден указанный модуль.
 
Цитата
тот самый написал:
Целевая платформа
Минималная платформа и т. п.
https://msdn.microsoft.com/ru-ru/library/8x480de8.aspx
http://take.ms/GPtdG
Вроде все ок тут. И других вариантов то нет.

Цитата
тот самый написал:
не спорь.
Ни в коем случае. Пытаюсь докопаться до истины.
Цитата
тот самый написал:
именно, так. Просто сообщения - не редактируются.
Эта библиотека на конечном комьпютере есть.
Не найден указанный модуль.
 
Цитата
тот самый написал:
пожалуй, в слове "почти" - вся и проблема....  
Цитата
тот самый написал:
вот ведь, лгунишка...
Вот тут та же библиотека, на машине, где она разрабатывалась http://take.ms/NQW8T. Не смотря на эту картину все работает.

Цитата
тот самый написал:
Убедиться, что на WinServer 2012R2 QUIK запущен, как 32-битное приложение
Не совсем понимаю, как это сделать. Дистрибутив один, запускной файл один.

Цитата
тот самый написал:
VCRUNTIMEIME140.dll
Возможно вы имели ввиду библиотеку vcruntime140.dll, потому как вашу я не нашел ни на одном компьютере, ни гугл ничего не знает про нее.
Цитата
тот самый написал:
так сказать, для сведения о api-ms-win-crt-runtime-L1-1-0.dll
Знать бы еще, как она попала ко мне. :)
Не найден указанный модуль.
 
Цитата
тот самый написал:
и?....
можно через http://rgho.st
http://rgho.st/7FQmHtjhL

Цитата
Николай Камынин написал:
проблема в том, что на компе нет библиотек, которые есть на компе разработчика.
Я собираю проект с опцией "Runtime libriry = Multi-threaded". Если верить описанию, то это должно избавить от проблемы с зависимостями.
Цитата
Николай Камынин написал:
проверьте свою dll на зависимости на компе разработчика и пользователя.
Уже сделал. О чем писал в самом пером посте. С зависимостями все ок.

Цитата
swerg написал:
Обратите внимание: у вас конфигурация, от которой вы показываете настройки, Debug, а библиотеку вы выбрали не debug для этой конфигурации.
Прошу прощения, что ввел в заблуждение. http://take.ms/VMpSt
Не найден указанный модуль.
 
Цитата
swerg написал:
Картинка Dependency Walker - это на WinServer 2012R2 сделана?
Да.
Цитата
swerg написал:
Кстати странно, что там есть msvcr80, если говорите, что Runtime libriry = Multi-threaded
http://take.ms/j3Wsz

Цитата
тот самый написал:
слишком много слов - сам файл! в студию!!!
Цитата
Дмитрий Минеев написал:
require("MyDll");
Это все содержание. Первая строчка, единственная и она не работает.
Не найден указанный модуль.
 
Цитата
swerg написал:
1) Приводите код на lua как подключате библиотеку
2) Где лежит сама сделанная библиотека на машине, где она не работает?

Как писать свои библиотеки на C++ для QLua
1. require("MyDll");
2. В обоих случаях она лежит в корне квика

Статью читал. А также выполнил инструкции, касающиеся использования библиотеки на машине, отличной от той, где она писалась.
Не найден указанный модуль.
 
Цитата
Дмитрий Минеев написал:
Цитата
Владимир   написал:
Добрый день.
Пробовали зарегистрировать библиотеку в ОС?
Добрый день.

При попытке зарегистрировать вот такую ошибку получаю.  http://take.ms/MoWp
Библиотека не регистрируется даже на рабочей машине. Правда с другой ошибкой. Но функционирует нормально. Проблема в чем-то другом.
Не найден указанный модуль.
 
Цитата
Владимир написал:
Добрый день.
Пробовали зарегистрировать библиотеку в ОС?
Добрый день.

При попытке зарегистрировать вот такую ошибку получаю. http://take.ms/MoWpB
Не найден указанный модуль.
 
Написал собственную библиотеку для работы с Quik через lua. На компьютере, где велась разработка (Win7), все работает отлично. На другом компьютере с тем же квиком (WinServer 2012R2) получаю ошибку "error loading module 'MyDll' from file '.\MyDll.dll':The specified module could not be found." Проект собирал с конфигурацией "Release", "Win32", "Runtime libriry = Multi-threaded". Прошелся программой Dependency Walker - почти все зависимости есть (http://take.ms/6Knry). Тот же release на компьютере, где писалась библиотека работает на ура. На сервере устанавливал vcredist_x64.exe и vcredist_x86.exe. Что еще я не сделал или сделал не так?
Определить очередь моей заявки в стакане в любой момент времени., Определение очереди.
 
Добрый день.

Вопрос в названии темы. При постановке заявки я могу посчитать какое количество контрактов до меня по этой же цене. Но стакан ведь "живой", данные меняются, кто-то снимает заявки, кто-то ставит. Как в любой момент времени посчитать сколько контрактов передо мной?
Не понятные флаги в OnOrder., При отправке маркетной заявки по Фьючерсу Si, поле флаг равно 280.
 
Цитата
Imersio Arrigo пишет:
Цитата
Дмитрий Минеев пишет:
Как "280" разбивать на флаги, если максимум, что мы должны получить - это 255? Иногда проскальзывает "284". Проблема только с маркетными заявками отправляемыми программно. Код отправки:
Кто сказал что до 255?
Таблица 5.1
280 = 0x100 + 0x10 + 0x08
284 = 0x100 + 0x10 + 0x08 + 0х04
Да. Все работает. Спасибо. Почему-то подумал, что это битовое значение.
Не понятные флаги в OnOrder., При отправке маркетной заявки по Фьючерсу Si, поле флаг равно 280.
 
Как "280" разбивать на флаги, если максимум, что мы должны получить - это 255? Иногда проскальзывает "284". Проблема только с маркетными заявками отправляемыми программно. Код отправки:


Код
--Send limit or market order
function SendOrder(operation, price, quantity, type_order, comment)
   
   -- Если это маркет заявка и цена не указана, то подставим цену в зависимости от типа заявки
   if type_order == "M"
      and price == 0 then
      
      if operation == "B" then         
         price = tonumber(getParamEx(params.p_classcode, params.p_seccode, "pricemax").param_value)
      elseif operation == "S" then
         price = tonumber(getParamEx(params.p_classcode, params.p_seccode, "pricemin").param_value)
      end
      
   end
   
   transaction = {
      ["CLASSCODE"] = params.p_classcode,
      ["ACTION"]="NEW_ORDER",
      ["ACCOUNT"]=params.account,
      ["OPERATION"] = operation,
      ["SECCODE"] = params.p_seccode,
      ["PRICE"] = tostring(round(price)),
      ["QUANTITY"] = tostring(quantity),
      ["TYPE"] = tostring(type_order),
      ["Условие исполнения"]=tostring("Поставить в очередь"),
      ["Переносить заявку"] = tostring("Да"),
      ["Дата экспирации"] = os.date("%Y%m%d", os.time() + 60 * 60 * 24),
   }
   
   --Check connection
   if isConnected == 0 then
      WriteLog("SendOrder", "Try to send limit in offline mode")
   else
      transaction.TRANS_ID = tostring(trans_id)
      transaction.CLIENT_CODE = comment
      res = sendTransaction(transaction)
   end
   
   if string.len(res) ~= 0 then
      message(res)
   end
   
end
"Нет прав на постановку стоп-заявки"., Ошибка при выставлении стоп-заявки.
 
В результате экспериментов, сработал вот такой код:


Код
transaction = {
      ["ACTION"] = "NEW_STOP_ORDER",
      ["ACCOUNT"] = account,
      ["CLASSCODE"] = class_code,
      ["SECCODE"] = sec_code,
      ["OPERATION"] = operation,      
      ["QUANTITY"] = tostring(quantity),
      ["STOPPRICE"] = tostring(price), -- Стоп условие      
      ["PRICE"] = tostring(price2), -- Цецна исполнения
   }
   
   --Check connection
   if isConnected == 0 then
      message("Try to send limit in offline mode", 1)
   else
      transaction.TRANS_ID = tostring(trans_id)
      transaction.CLIENT_CODE = comment
      res = sendTransaction(transaction)
      
      if string.len(res) ~= 0 then
         -- Ошибка отправки
         message("send message = " .. tostring(res), 1)
      end
   end
 
"Нет прав на постановку стоп-заявки"., Ошибка при выставлении стоп-заявки.
 
Забыл уточнить - это Quik - junior
"Нет прав на постановку стоп-заявки"., Ошибка при выставлении стоп-заявки.
 
Код отправки:

Код
transaction = {
      ["CLASSCODE"] = class_code,
      ["SECCODE"] = sec_code,
      ["ACTION"] = "NEW_STOP_ORDER",
      ["ACCOUNT"] = account,
      ["OPERATION"] = operation,      
      ["QUANTITY"] = tostring(quantity),
      ["STOPPRICE2"] = tostring(price)
      ["PRICE"] = tostring(price2),      
      ["STOP_ORDER_KIND"] = "SIMPLE_STOP_ORDER",
      ["EXPIRY_DATE"] = "GTC",
   }
   
   --Check connection
   if isConnected == 0 then
      message("Try to send limit in offline mode", 1)
   else
      transaction.TRANS_ID = tostring(trans_id)
      transaction.CLIENT_CODE = comment
      res = sendTransaction(transaction)
      
      if string.len(res) ~= 0 then
         -- Ошибка отправки
         message("send message = " .. tostring(res), 1)
      end
   end
    
После отправки небольшая пауза, а далее получаю сообщение:

"Нет прав на постановку стоп-заявки".
Квик: 7.0.1.5
Инструмент: GAZP
Не подключается iuplua, При попытке подключить iuplua получаю ошибку библиотеки iuplua.dll
 
Цитата
Michael Bulychev пишет:
При инициализации Lua смотрит на две переменные - LUA_PATH и LUA_CPATH. Если Вы планируете загружать модуль как dll, то он должен находиться в package.cpath, если это код Lua, то package.path. Ошибка, которую Вы получаете, говорит о том, что Lua пытается загрузить dll как свой нативный код.
Даже в Вашем примере "..\lib\mingw_dll\?.dll;;;;F  :\  lua\5.1\lua\?.luac" смешаны файлы luac и dll.
В общем Вам надо разобраться откуда что загружается и навести порядок в библиотеках и путях.
Огромное спасибо!!!
Действительно. Все заработало вот так:

Код
package.cpath = ";;f:\\lua\\5.1\\clibs\\?51.dll;f:\\lua\\5.1\\clibs\\?.dll;"
package.path = ";;f:\\lua\\5.1\\lua\\?.lua;"
require'iuplua'
Сейчас перепишу все пути. Еще раз спасибо!
Не подключается iuplua, При попытке подключить iuplua получаю ошибку библиотеки iuplua.dll
 
Цитата
Николай Камынин пишет:
Цитата
Дмитрий Минеев пишет:
Цитата
Michael Bulychev пишет:
добрый день.
в присланном файле только это:
Код
   require "iuplua"
    
При этом:
Цитата
Дмитрий Минеев пишет:
Добавьте маску c \путь\\?.dll в package.cpath
Это уже сделано
Где-то не сходится.

Если Вы копируете библиотеки в папку со скриптом, то:
package.cpath = getScriptpath() .. "\\?.dll;".. package.cpath
Либо вместо getScriptpath добавьте правильный путь к библиотекам
У меня в "LUA_PATH" все прописано.
Код
  ";;F:\Lua\5.1\clibs\?51.dll;.\?.dll;.\?.so;..\lib\?.so;..\lib\vc_dll\?.dll;..\lib\bcc_dll\?.dll;..\lib\mingw_dll\?.dll;;;;F:\lua\5.1\lua\?.luac"
   
Но и строчку
Код
  package.cpath =  ";;F:\Lua\5.1\clibs\?51.dll;.\?.dll;.\?.so;..\lib\?.so;..\lib\vc_dll\?.dll;..\lib\bcc_dll\?.dll;..\lib\mingw_dll\?.dll;;;;F:\lua\5.1\lua\?.luac;" .. package.cpath  
тоже пробовал добавлять. Результат одинаковый.
возможно слишком длинная строка LUA_PATH посмотрите в командной строке командой set не обрезается ли путь
Тут тоже все норм. Вот. Мне кажется не в том направлении идем. Если проблема в пути, то ошибка будет вот такой:

Код
...terminals\QUIK Junior\scripts\RangeForTrade\test.lua:1: module 'iuplua' not found:
   no field package.preload['iuplua']
   no file '.\iuplua.lua'
   no file 'F:\work\trade\ММВБ\terminals\QUIK Junior\lua\iuplua.lua'
   no file 'F:\work\trade\ММВБ\terminals\QUIK Junior\lua\iuplua\init.lua'
   no file 'F:\work\trade\ММВБ\terminals\QUIK Junior\iuplua.lua'
   no file 'F:\work\trade\ММВБ\terminals\QUIK Junior\iuplua\init.lua'
   no file 'F:\Lua\5.1\clibs\iuplua51.dll'
   no file '.\iuplua.dll'
   no file '.\iuplua.so'
   no file '..\lib\iuplua.so'
   no file '..\lib\vc_dll\iuplua.dll'
   no file '..\lib\bcc_dll\iuplua.dll'
   no file '..\lib\mingw_dll\iuplua.dll'
   no file '.\iuplua.lua'
   no file 'F:\work\trade\ММВБ\terminals\QUIK Junior\lua\iuplua.lua'
   no file 'F:\work\trade\ММВБ\terminals\QUIK Junior\lua\iuplua\init.lua'
   no file 'F:\work\trade\ММВБ\terminals\QUIK Junior\iuplua.lua'
   no file 'F:\work\trade\ММВ
 
Это я просто переименовал библиотеку.
Не подключается iuplua, При попытке подключить iuplua получаю ошибку библиотеки iuplua.dll
 
Цитата
Старатель пишет:
Наверное, вы какую-то другую строку добавляли:
Цитата
Дмитрий Минеев пишет:
error loading module 'iuplua' from file ' C :\ Program Files (x86) \Lua\5.1\clibs\iuplua51.dll':
C :\ Program Files (x86) \Lua\5.1\clibs\iuplua51.dll:1: '=' expected near 'ђ'
Это потому, что я переустановил Луа на другой диск. Думал, может что-то с доступом связано.
Не подключается iuplua, При попытке подключить iuplua получаю ошибку библиотеки iuplua.dll
 
Цитата
Michael Bulychev пишет:
добрый день.
в присланном файле только это:
Код
 require "iuplua"
  
При этом:
Цитата
Дмитрий Минеев пишет:
Добавьте маску c \путь\\?.dll в package.cpath
Это уже сделано
Где-то не сходится.

Если Вы копируете библиотеки в папку со скриптом, то:
package.cpath = getScriptpath() .. "\\?.dll;".. package.cpath
Либо вместо getScriptpath добавьте правильный путь к библиотекам
У меня в "LUA_PATH" все прописано.

Код
";;F:\Lua\5.1\clibs\?51.dll;.\?.dll;.\?.so;..\lib\?.so;..\lib\vc_dll\?.dll;..\lib\bcc_dll\?.dll;..\lib\mingw_dll\?.dll;;;;F:\lua\5.1\lua\?.luac"
 
Но и строчку

Код
package.cpath =  ";;F:\Lua\5.1\clibs\?51.dll;.\?.dll;.\?.so;..\lib\?.so;..\lib\vc_dll\?.dll;..\lib\bcc_dll\?.dll;..\lib\mingw_dll\?.dll;;;;F:\lua\5.1\lua\?.luac;" .. package.cpath
тоже пробовал добавлять. Результат одинаковый.
Не подключается iuplua, При попытке подключить iuplua получаю ошибку библиотеки iuplua.dll
 
Цитата
Egor Zaytsev пишет:
Цитата
Дмитрий Минеев пишет:
По вчерашней библиотеке помогла перекодировка файла в UTF-8 (без BOM). Для iuplua пока ничего не помогает...
Добрый день.

Дмитрий, можете выложить полный скрипт, либо пришлите нам на почту - постараемся помочь.
Возможно Вы пытаетесь dll загрузить как модуль на Lua.
Добрый день.
Да, конечно. Вот ссылка.
Не подключается iuplua, При попытке подключить iuplua получаю ошибку библиотеки iuplua.dll
 
По вчерашней библиотеке помогла перекодировка файла в UTF-8 (без BOM). Для iuplua пока ничего не помогает...
Не подключается iuplua, При попытке подключить iuplua получаю ошибку библиотеки iuplua.dll
 
Цитата
s_mike@rambler.ru пишет:
Вы подключаете dll как lua-расширение.

Добавьте маску c :\ \путь\\?.dll в package.cpath
Это уже сделано. Только что отказалась работать еще одна библиотека, которая еще вчера отлично работала. Ошибка та же. Библиотека находится в корне с папкой квика. Вспоминаю, что со вчерашнего дня менялось...
Не подключается iuplua, При попытке подключить iuplua получаю ошибку библиотеки iuplua.dll
 
В коде всего одна строчка

Код
require"iuplua"
 
Все. При запуске скрипта в Квике получаю ошибку:

Код
error loading module 'iuplua' from file 'C:\Program Files (x86)\Lua\5.1\clibs\iuplua51.dll':
   C:\Program Files (x86)\Lua\5.1\clibs\iuplua51.dll:1: '=' expected near 'ђ'
 
Версия квика: 6.17.1.17
Версия lua: 5.1

Пробовал менять кодировки файла - без результата. Переустанавливал Lua - без результата. При этом, например:

Код
require"bit"
 
Работает корректно.
Страницы: 1 2 След.
Наверх