31
Support/Help / Re: Plugin Updater keeps faililng
« Last post by mirandam on 01 06 2025, 00:32:03 »Yes, I can move the DLLs when Miranda is running, so what is next?
local clist = require("m_clist") -- we want to modify contact list menu, so we need to import m_clist Lua module and we will call it "clist"
local icolib = require("m_icolib") -- we want to add an icon to our new menu item, so we need to import m_icolib Lua module and we will call it "icolib"
clist.AddGroupMenuItem({ -- as we want to add group menu item, we should call AddGroupMenuItem function from clist
Name = "Exit Miranda", -- name of the menu item (will be shown in the groups menu)
Service = "CloseAction", -- what service calls this menu item (we created this service function above)
Icon = icolib.AddIcon('exit', 'Exit!'), -- as we want to add icon to our menu item and put it to Customize -> Icons -> MirLua, we should call AddIcon function from icolib
Uid = '75EA040D-AC0E-40FA-9A3C-878210B0642C' -- unique GUID, you can create one on https://www.uuidgenerator.net/guid. All that is required of it is to be unique among all your scripts
})
clist.AddGroupMenuItem({
Name = "Main menu",
Service = "MainMenu/Command",
Icon = icolib.AddIcon('mainmenu', 'Main menu'),
Uid = '75EA040D-AC0E-40FA-9A3C-878210B06421'
})
clist.AddGroupMenuItem({
Name = "Status",
Service = "GlobalStatus/Command",
Icon = icolib.AddIcon('status', 'Status'),
Uid = '75EA040D-AC0E-40FA-9A3C-878210B06422'
})
clist.AddGroupMenuItem({
Name = "Options",
Service = "Options/OptionsCommand",
Icon = icolib.AddIcon('options', 'Options'),
Uid = '75EA040D-AC0E-40FA-9A3C-878210B06423'
})
clist.AddGroupMenuItem({
Name = "About",
Service = "Help/AboutCommand",
Icon = icolib.AddIcon('about', 'About Miranda'),
Uid = '75EA040D-AC0E-40FA-9A3C-878210B06424'
})
clist.AddGroupMenuItem({
Name = "Exit Miranda",
Service = "CloseAction",
Icon = icolib.AddIcon('exit', 'Exit!'),
Uid = '75EA040D-AC0E-40FA-9A3C-878210B06425'
})
(см. crash20250530123832.txt)Нужно в настройках выбрать канал обновлений "версия с отладочными символами". Без них крашлог не содержит полезной информации.
Если в WINE выбрать версию Windows более свежую чем "Windows 2003", то иконки в меню становятся чёрными квадратиками, это неприятно. Хотя остальной функционал вроде был рабочий.Если под всеми поддерживаемыми виндами в Миранде всё нормально, а под вайном нет, очевидно, это проблема вайна и решать её должны разработчики вайна.
Есть ли в планах решить эту проблему?
На форуме winehq, один из разработчиков выложил исправленную dll-ку которая решает проблему чёрных иконок.В случае с нанокадом, как я понимаю, был костыль, который со временем стал приводить к пропаданию значков. Это не наш случай, у нас под вайн костылей в коде, вроде, нет. Ещё одно свидетельство того, что проблема в вайне - до какой-то версии вайна в любом вайновском режиме, даже в "Windows 2003", значки были чёрные. Потом они что-то исправили и в "Windows 2003" значки появились. Видимо, не до конца исправили.