Блог им. 315

Автоматическая авторизация в Quik

Еще один способ авторизации в Quik без использования exe-файлов
Просто сохраните в текстовый файл, например, autologin.lua и выберите его в квике.

--http://quik2dde.ru
local w32 = require("w32")

-- логин и пароль для терминала
QUIK_LOGIN = "login"
QUIK_PASSW = "parol"


function FindLoginWindow()
  hLoginWnd = w32.FindWindow("", "Идентификация пользователя")
  if hLoginWnd == 0 then
    hLoginWnd = w32.FindWindow("", "User identification")
  end
  return hLoginWnd
end

timeout = 1000  -- таймаут между попытками поиска окна логина
is_run = true

function OnStop()
  timeout = 1
  is_run = false
end

function main()
  while is_run do
    sleep(timeout)

    if isConnected() == 0 then
  
      local hLoginWnd = FindLoginWindow()
      if hLoginWnd ~= 0 then

        local hLogin = w32.FindWindowEx(hLoginWnd, 0, "", "")
        local nPassw = w32.FindWindowEx(hLoginWnd, hLogin, "", "")
        local nBtnOk = w32.FindWindowEx(hLoginWnd, nPassw, "", "")

        w32.SetWindowText(hLogin, QUIK_LOGIN)
        w32.SetWindowText(nPassw, QUIK_PASSW)

        w32.SetFocus(nBtnOk)
        w32.PostMessage(nBtnOk, w32.BM_CLICK, 0, 0)
                
                while not isConnected() do sleep(1000); end;

      end
    end

  end
end
    559 | ★34
    18 комментариев
    Вы что творите?
    Сперва школьники из o-s-a, потом тут.
    Нет, чтобы ссылку привести, мол, лебята, все уже написано давно, в далеком 2013 годе:
    quik2dde.ru/viewtopic.php?id=80
    Когда эту ссылку приводил вчера в топике Сергей < o-s-a.net >  (sergey_gt),  он удалил мой ответ, засранец ;)
    Завтра напишу свой пост. Озаглавлю:
    «Автоматическая авторизация в Quik»
    avatar
    Олег Коробкин, я себя автором скрипта не считаю!
    avatar
    Олег Коробкин, ваш «автор» аналогично скоммуниздил решение. Правды нет нигде. :-)
    avatar
    Евгений, какие ваши доказательства?
    avatar
    Олег Коробкин, Квик трогал лет 8 назад, может больше. Уже тогда было что-то подобное.
    avatar
    Я этого не говорил.
    Но проявите уважение к творцу этого кода, хоть и анонимному.
    avatar
    Олег Коробкин, С уважением.
    avatar
    Владимир, смотрится лучше ;)
    avatar
    Автор, а этот скрипт с любой версией Квика должен работать? 
    Что-то я попробовал у себя такое проделать (сохранил код в текстовый файл с расширением .lua и добавил его в Квике в lua-скрипты). Выдает ошибку:

    C:\Users\User\Desktop\autologin.lua:1: module 'w32' not found:
    no field package.preload['w32']
    no file '.\w32.lua'
    no file 'C:\Program Files (x86)\Info\lua\w32.lua'
    no file 'C:\Program Files (x86)\Info\lua\w32\init.lua'
    no file 'C:\Program Files (x86)\Info\w32.lua'
    no file 'C:\Program Files (x86)\Info\w32\init.lua'
    no file 'C:\Program Files (x86)\Info\Include\w32.dll'
    no file 'C:\Program Files (x86)\Info\Include\w32.lua'

    avatar
    Excogit8er, 

    Если из скрипта робота понадобилось вызвать какие-либо функции WinAPI — проще всего взять готовую библиотеку-обертку.
    Например, посмотрим на библиотеку w32 для Lua.

    Чтобы начать ее использовать достаточно положить файл w32.dll в каталог с QUIK (т.е. там, где info.exe). Если у вас установлен пакет LuaForWindows, то эта библиотека есть в нем.

    Важно: если вы хотите использовать функции, отмеченные здесь как «новые» — то необходимо взять библиотеку с этого сайта, т.к. они есть только в ней!

    avatar
    Олег Коробкин, Понятно, спасибо! Добавил dll'ку в каталог с квиком, все сразу заработало. =)
    Хотя с точки зрения безопасности — это, конечно, «не айс»: хранить пароли в текстовом файле в открытом виде. 
    avatar
    Excogit8er, ага, ато ZOG обнулят твои мильйоны:)
    А тема, полезная, спасибо автор. Попробую завтра.
    Плюсонул бы да сил нет. Плюсоните профиль плизз.

    avatar
    Troll, получи фашист гранату заслуженные плюсы!
    avatar
    Это не реклама, ежели че, просто ссылка ;)
    smart-lab.ru/blog/260931.php


    Программа позволяет настроить ввод компьютера в сон с последующим выводом из сна с запуском программы QUIK.В качестве бонуса — ввод логина и пароля в торговую систему.
    Можно просто — безо всякого сна настроить на запуск нескольких QUIK-ов.
    И еще: логин и пароль хранятся в зашифрованном виде:

    <?xml version="1.0"?>
    <QuikLoginPass xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
      <qpath>D:\QUIK_OpenBroker</qpath>
      <login>Jg5SzaFaNlHtuPJp0mJXtw==</login>
      <pass>h6280j+RRiT+VndCe5eeNA==</pass>
      <waitfor>5</waitfor>
    </QuikLoginPass>
    
    avatar
    Спасибо!
    Скрипт немного переделала под себя, теперь у меня при запуске КВИКа автоматом вводится только имя пользователя) 
    давно думала, что много времени трачу на ввод имени пользователя, а тут эта статья)
    а вот пароль пока не готова так легкомысленно использовать)))
    avatar
    Олеся Ветер, имя пользователя — можно вводить только первую букву;)
    avatar
    waldhaber, точно, проверила, работает!
    и где вы раньше были?)))
    avatar
    waldhaber, любую букву из подстроки
    avatar

    Читайте на SMART-LAB:
    Фото
    Снижение военной премии в нефти: что это меняет для доллара и G10
    Во второй половине понедельника – начале вторники рынки активно пересматривают премию за худший сценарий на энергетическом рынке, что цепочкой...
    Фото
    12 марта Группа Ренессанс страхование опубликует МСФО за 2025 год
    Напоминаем, что 12 марта 2026 года RENI опубликует МСФО Группы за 2025 год, а также проведет День инвестора, чтобы рассказать о ситуации на...
    Фото
    📈 Новый выпуск облигаций МГКЛ уже торгуется на рынке
    Биржевые облигации ПАО «МГКЛ» серии 001PS-02 начали торговаться на вторичном рынке после размещения. 💼 Выпуск доступен для неквалифицированных...
    Фото
    Гендиректор Инарктики продал свои акции компании. Что это может значить?
    Вечером в пятницу (6 марта ) вышел сущфакт о том, что Соснов Илья Геннадьевич, гендиректор Инарктики, продал свои акции компании. В нашем...

    теги блога Владимир

    ....все тэги



    UPDONW
    Новый дизайн