Author Topic: MirLua  (Read 39197 times)

0 Members and 2 Guests are viewing this topic.

Offline unsane

Re: MirLua
« Reply #45 on: 17 06 2016, 08:20:23 »
donald, Да, protocols.CallService не передает контакт.

Добавил новый метод. Заработает в следующем ночнике.

Code: [Select]
local protocols = require('m_protocols')
protocols.CallSendChain(1441, '/GetInfo')
Si no estas con nosotros, estas contra nosotros.
 

Offline donald

Re: MirLua
« Reply #46 on: 17 06 2016, 12:51:43 »
unsane Спасибо. Еще вопрос, я не могу из lua выполнить
local user32 = require('c:\\windows\\system32\\user32.dll')
Выходит сообщение файл не найден.
Если дать команду
file = io.open ('c:\\windows\\system32\\user32.dll' , "r") - ошибки нет

 

Offline unsane

Re: MirLua
« Reply #47 on: 17 06 2016, 13:27:26 »
Нужно в начале скрипта сделать так:
Code: [Select]
package.cpath = package.cpath .. ';c:\\windows\\system32\\?.dll'
а потом уже дергать require.
Но это не поможет, т.к. луа умеет загружать только те dll, в которых экспортирована специальная функция int luaopen_*(lua_State *L).
Si no estas con nosotros, estas contra nosotros.
 

Offline donald

Re: MirLua
« Reply #48 on: 22 06 2016, 06:02:12 »
Здравствуйте, перестал работать метод Message (возвращает nil)
local hHook = m.HookEvent("MirLua/RecvMessage", function(w, l)
    local ccd = CCSDATA(l)
ccd.Message
Случилось это, где-то после с 17 мая.
cdd.hContact - работает.
 

Offline unsane

Re: MirLua
« Reply #49 on: 22 06 2016, 07:21:16 »
donald, а так?
Code: [Select]
local hHook = m.HookEvent("MirLua/RecvMessage", function(w, l)
    local ccd = CCSDATA(l)
    local pre = PROTORECVEVENT(ccd.lParam)
    print(pre.Message)
end
Si no estas con nosotros, estas contra nosotros.
 

Offline donald

Re: MirLua
« Reply #50 on: 22 06 2016, 12:37:05 »
unsane Так работает
 

Offline MisterMyth

Re: MirLua
« Reply #51 on: 29 06 2016, 13:18:34 »
Как можно создать в Туллбаре кнопку "Открыть входящие". Такая есть в протокольном меню mail.ru. Хотелось бы вынести ее в Туллбар... Спасибо.
Myth: Make Your Thought Heard
 

Offline unsane

Re: MirLua
« Reply #52 on: 29 06 2016, 14:15:33 »
Code: [Select]
local mbb = require('m_msg_buttonsbar')
local icolib = require('m_icolib')

local moduleName = 'MyReceivedFiles'
local BBBF_ISIMBUTTON = 32
local BBBF_ISRSIDEBUTTON = 128
local bbButton =
{
  Module = moduleName,
  ButtonID = 1,
  Flags = BBBF_ISIMBUTTON | BBBF_ISRSIDEBUTTON,
  Tooltip = m.Translate('My received files'),
  Icon = icolib.AddIcon(moduleName, 'My received files')
}

mbb.AddButton(bbButton)

m.HookEvent("TabSRMM/ButtonsBar/ButtonPressed", function(w, l)
  bcd = CustomButtonClickData(l)
  if bcd.Module == moduleName and bcd.ButtonID == 1 then
    m.CallService('SRFile/OpenContRecDir', bcd.hContact, 0)
  end
end)

local script = {}

function script.Unload()
  mbb.RemoveButton(bbButton.Module, bbButton.ButtonID)
end

return script
Si no estas con nosotros, estas contra nosotros.
 

Offline donald

Re: MirLua
« Reply #53 on: 06 09 2016, 06:05:44 »
Здравствуйте, подскажите можно-ли из lua удалить из базы контакт полностью? Команда "db.DeleteModule(nil, 'test')" удаляет только модуль.
 

Offline Mikalair

Re: MirLua
« Reply #54 on: 06 09 2016, 11:40:45 »

Code: [Select]
m.CallService("DB/Contact/Delete", hContact)
If you like my work, you can donate to me via Bitcoin: 1CHAseNjVFfLQViLWAhh1fe6fGTiR6p1UM
 

Offline DreamFlasher

  • Newbie
  • *
  • Posts: 5
Re: MirLua
« Reply #55 on: 11 09 2016, 23:07:50 »
Hey, how do I retrieve the protocol in which a message is sent from in the following script:
Code: [Select]
message = require('m_message')
winapi = require('winapi')

m.HookEvent("MirLua/RecvMessage", function(w, l)
  local ccd = CCSDATA(l)
  if ccd.Message == 'stopword' then
    winapi.ShellExecute('command', 'file', 'args', 0)
    message.Send(ccd.hContact, ccd.Message)
    return 1;
  end
end)

 

Offline donald

Re: MirLua
« Reply #56 on: 20 09 2016, 14:24:07 »
Здравствуйте, подскажите пожалуйста, можно ли в передать unicode строку функции, созданной в lua, у меня не получается.
Выводится пустая строка, вместо test

Code: [Select]
local winapi = require('winapi')
local hService = m.CreateServiceFunction('CreateFunctionSearch', function(w)
    winapi.MessageBox(_, w, 'Lua', 0, 10000)
    return
end)

result = m.CallService('CreateFunctionSearch', '[b]test[/b]')

 
« Last Edit: 21 09 2016, 04:37:45 by Apollo2k4 »
 

Offline unsane

Re: MirLua
« Reply #57 on: 20 09 2016, 19:04:39 »
donald, попробуй
Code: [Select]
u'[b]test[/b]'
« Last Edit: 21 09 2016, 12:12:23 by unsane »
Si no estas con nosotros, estas contra nosotros.
 

Offline Mikalair

Re: MirLua
« Reply #58 on: 21 09 2016, 11:01:44 »
unsane, не выйдет, wparam не кастится к строке.
If you like my work, you can donate to me via Bitcoin: 1CHAseNjVFfLQViLWAhh1fe6fGTiR6p1UM
 

Offline donald

Re: MirLua
« Reply #59 on: 21 09 2016, 15:31:51 »
Не работает. Пока приходит в голову передать строку через базу данных
« Last Edit: 21 09 2016, 15:34:39 by donald »