Стартовая страница › Форумы › Разработка и интеграция › Защита Модулей, Драйверов, Плагинов
- В этой теме 38 ответов, 4 участника, последнее обновление 3 месяца, 1 неделя назад сделано
Mikhail.
-
АвторСообщения
-
08.07.2024 в 14:40 #33379
manjey73
Участниккоторый будет лежать рядом в проекте…
08.07.2024 в 15:14 #33380Romiros
УчастникА зачем? Всё равно методы запускаются из лоджика. Можно вернуть текст для лога через out переменную, я так делаю, чтобы основной код логики не засорять.
08.07.2024 в 15:41 #33381manjey73
УчастникС возвратом текста много возни, хотел писать сразу в лог то, что мне нужно.
Особенно учитывая, что там разные методы WriteError, WriteAction и т.д.08.07.2024 в 16:10 #33382JurasskPark
УчастникС возвратом текста много возни, хотел писать сразу в лог то, что мне нужно.
Особенно учитывая, что там разные методы WriteError, WriteAction и т.д.Это всё решаемо.
Клиент internal class DriverClient#region DebugerLog /// <summary> /// Getting logs /// <para>Получение лога<para> /// </summary> public static DebugData OnDebug; public delegate void DebugData(string msg); internal void DebugerLog(string text) { if (OnDebug == null) { return; } OnDebug(text); } #endregion DebugerLog
Откуда вызываете код.
DriverClient.OnDebug = new DriverClient.DebugData(DebugerLog); DriverClient driverClient = DriverClient();
#region Debug Log /// <summary> /// Getting logs /// </summary> public void DebugerLog(string text) { moduleLog.WriteAction(text); } #endregion Debug Log }
08.07.2024 в 17:57 #33383manjey73
УчастникИнтересно, но нифига непонятно, куда что должно быть помещено 🙂
Итак снова. Есть класс ModXXXLogic : ModuleLogic
Есть некий класс internal Class1, при этом он никоим образом не вызывается непосредственно из ModXXXLogic, последний даже не знает об его существовании.Что объявить в ModXXXLogic, чтобы когда я доберусь до вызова чего-то из Class1 я мог напечатать в журналы логов ?
Пробовал делать Class1 : ModuleLogic но похоже там все не так просто и вряд ли я получу переменные и методы из ModuleLogic, может как-то неправильно пытаюсь сделать, но тот же serverContext у меня выходит null….
08.07.2024 в 18:36 #33384manjey73
Участникупс, вроде сделал наследника и могу из своего класса печатать в логи…
09.07.2024 в 08:46 #33385JurasskPark
УчастникНу хвалитесь как сделали?:)
09.07.2024 в 08:56 #33386manjey73
УчастникДа еще ковырять и ковырять… Главное что вывод пошел.
Опять же, может можно как-то иначе это сделать, а не наследовать пять ModuleLogic или DriverLogicСобственно проблема была в том, что мой Class1 напрямую не запускается из ModXXXXLogic. Он там где-то потом в процессе стартует из другого класса, который как раз из ModXXXXLogic запускается.
09.07.2024 в 14:51 #33391Mikhail
МодераторОн там где-то потом в процессе стартует из другого класса, который как раз из ModXXXXLogic запускается.
Значит в конструкторе Вашего класса нужно передать ссылку на объект журнала, которая имеет тип ILog.
09.07.2024 в 15:59 #33392manjey73
УчастникВот, и как это сделать правильно?
10.07.2024 в 12:27 #33393Mikhail
Модераторpublic MyClass(ILog log) { ... }
23.01.2025 в 17:50 #36475manjey73
УчастникМихаил, собственно напишите где задавать свою информацию в окне регистрации для версии 6.4.0 ?
24.01.2025 в 10:53 #36484manjey73
УчастникОшибка при создании интерфейса модуля ModFarm типа Scada.Server.Modules.ModFarm.View.ModFarmView из файла C:\Program Files\SCADA\ScadaAdmin\Lib\ModFarm.View.dll: Exception has been thrown by the target of an invocation.
При попытке добавить RegistrationInfo.PermanentKeyUrl = «mailto:myemail@myemail.ru»;
и для TrialKey то же самое.Только ссылку можно добавить на сайт? а как вот просто почту добавить?
24.01.2025 в 11:13 #36485manjey73
УчастникВопрос, а подшаманить еще и библиотеку Scada.Common точно не требуется?
24.01.2025 в 12:07 #36486manjey73
УчастникПолучилось добавить ссылки, создав новый инфо
RegistrationInfo = new RegistrationInfo
{
// тут все параметры
};даже можно mailto: использовать, только вот при установленном Outlook у меня фигня какая-то запускается.
-
АвторСообщения
- Вы должны авторизироваться для ответа в этой теме.