Воскресенье, 19.05.2024, 13:41
Главная Регистрация RSS
Приветствую Вас, Гость
[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
  • Страница 1 из 1
  • 1
Форум » Основной » Проблемные ситуации » Подвисает при подключении KeyboardHook
Подвисает при подключении KeyboardHook
batyrkin8082Дата: Понедельник, 08.02.2021, 15:53 | Сообщение # 1
Рядовой
Группа: Пользователи
Сообщений: 5
Репутация: 0
Статус: Оффлайн
При подключении внешней компоненты KeyboardHook 1С просто подвисает и все. На скрине видно точку останова - дальше нее не идет. У меня очень сильные подозрения что это из за установленной у нас системы DLP которая тоже пытается контролировать клавиатуру - видимо возникает конфликт.
Версия 1С:Предприятие 8.3 (8.3.18.1289), версия инструментов 5.74. Но это повторяется и на других версиях. Причем иногда проскакивает и инструменты запускаются, т.е. сами версии библиотек и их разрядность определяются правильно.
Подскажите пожалуйста, есть ли какой то вариант обойтись без KeyboardHook и как то сделать его отключаемым?

Прикрепления: 2352004.png (59.4 Kb)


Сообщение отредактировал batyrkin8082 - Понедельник, 08.02.2021, 15:55
 
tormozitДата: Понедельник, 08.02.2021, 18:40 | Сообщение # 2
Генералиссимус
Группа: Администраторы
Сообщений: 6204
Репутация: 159
Статус: Оффлайн
Что есть "система DLP"?
Попробуй другой разрядности клиентское приложение.
Отключение тут https://www.hostedredmine.com/issues/891475
 
tormozitДата: Вторник, 09.02.2021, 10:30 | Сообщение # 3
Генералиссимус
Группа: Администраторы
Сообщений: 6204
Репутация: 159
Статус: Оффлайн
Еще можно воспроизвести в пустой базе, снять дамп зависшего процесса и отправить для анализа на v8@1c.ru
 
batyrkin8082Дата: Вторник, 09.02.2021, 13:43 | Сообщение # 4
Рядовой
Группа: Пользователи
Сообщений: 5
Репутация: 0
Статус: Оффлайн
Предотвращение утечек (англ. Data Leak Prevention, DLP) — технологии предотвращения утечек конфиденциальной информации из информационной системы вовне, а также технические устройства (программные или программно-аппаратные) для такого предотвращения утечек.
DLP-системы строятся на анализе потоков данных, пересекающих периметр защищаемой информационной системы. При детектировании в этом потоке конфиденциальной информации срабатывает активная
компонента системы, и передача сообщения (пакета, потока, сессии)
блокируется. В общем мониторит всё и вся.

Другой разрядности платформа с тем же результатом валится sad

Описанное отключение для обычного приложения, а у меня УП и данную форму я даже открыть не могу - оно зависает как раз при открытии.
Инструменты в УФ вообще теоретически  могут работать без этой компоненты, или там слишком сильные завязки на нее и вырезать/отключить не получится?
 
tormozitДата: Вторник, 09.02.2021, 23:51 | Сообщение # 5
Генералиссимус
Группа: Администраторы
Сообщений: 6204
Репутация: 159
Статус: Оффлайн
Цитата batyrkin8082 ()
Инструменты в УФ вообще теоретически могут работать без этой компоненты
Так я дал ссылку на задачу, в которой описано что на нее завязано в обычном приложении. Значит как минимум в обычном приложении подсистема будет работать и без нее с описанными ограничениями.
В управляемом приложении на нее еще завязано глобальное меню. А вот оно уже является существенным блоком функционала, без которого тоже можно использовать инструменты, но на удобстве это уже заметно отразится. В будущем я планирую расширить применение этого перехвата. Так что делать настройку для его отключения я буду только если проблема появится и не решится у нескольких пользователей.

Тебе же пока предлагаю протестировать отключение этого перехвата через параметр запуска ОтключитьПерехватКлавиатурыИР.
Обработка.ирПлатформа.МодульОбъекта:
Код
Функция ПодключитьПерехватКлавиатуры(НовоеЗначение = Неопределено) Экспорт
    
    Если мПерехватКлавиатуры = Неопределено Тогда
        Попытка
            мПерехватКлавиатуры = Вычислить("ирПерехватКлавиатуры");
        Исключение
        КонецПопытки;
    КонецЕсли;
    Если мПерехватКлавиатуры = Неопределено Тогда
        Если Найти(ПараметрЗапуска, "ОтключитьПерехватКлавиатурыИР") > 0 Тогда
            мПерехватКлавиатуры = Новый Структура("ЗахватПервым,СобытиеПриНажатии,ЗахватРазрешен");
            ПерехватКлавиатурногоВводаВОбычномПриложении = Ложь;
        Иначе
            мПерехватКлавиатуры = ПолучитьОбъектВнешнейКомпонентыИзМакета("KeyboardHook", "AddIn.ПерехватКлавиатуры.KeyboardHook", "ПерехватКлавиатуры", ТипВнешнейКомпоненты.Native);
        КонецЕсли;
        Если мПерехватКлавиатуры = Неопределено Тогда
            ирОбщий.СообщитьЛкс("Не удалось подключить внешнюю компоненту ПерехватКлавиатуры. Поэтому некоторые функции инструментов отключены.", СтатусСообщения.Внимание);
            Возврат Неопределено;
        КонецЕсли;
        мПерехватКлавиатуры.СобытиеПриНажатии = Истина;
        Попытка
            Выполнить("ирПерехватКлавиатуры = мПерехватКлавиатуры");
        Исключение
        КонецПопытки;
    КонецЕсли;
    мПерехватКлавиатуры.ЗахватРазрешен = ПерехватКлавиатурногоВводаВОбычномПриложении;
    Возврат мПерехватКлавиатуры;

КонецФункции
 
batyrkin8082Дата: Среда, 10.02.2021, 09:53 | Сообщение # 6
Рядовой
Группа: Пользователи
Сообщений: 5
Репутация: 0
Статус: Оффлайн
Спасибо, значит буду так отключать.
 
tormozitДата: Среда, 10.02.2021, 19:08 | Сообщение # 7
Генералиссимус
Группа: Администраторы
Сообщений: 6204
Репутация: 159
Статус: Оффлайн
Предложенное мной выше исправление позволит только обычное приложение запускать. Для запуска управляемого приложения придется ждать версии 5.79.
 
batyrkin8082Дата: Четверг, 11.02.2021, 11:55 | Сообщение # 8
Рядовой
Группа: Пользователи
Сообщений: 5
Репутация: 0
Статус: Оффлайн
Да я там пока условие подправил и запустил, типа того:

Код
было
Если Найти(ПараметрЗапуска, "ОтключитьПерехватКлавиатурыИР") > 0 Тогда

стало
Если 1=1 Тогда
 
tormozitДата: Воскресенье, 14.02.2021, 22:22 | Сообщение # 9
Генералиссимус
Группа: Администраторы
Сообщений: 6204
Репутация: 159
Статус: Оффлайн
Реализовано в 5.79 https://www.hostedredmine.com/issues/919992
 
batyrkin8082Дата: Воскресенье, 14.02.2021, 22:58 | Сообщение # 10
Рядовой
Группа: Пользователи
Сообщений: 5
Репутация: 0
Статус: Оффлайн
Премного благодарен!
 
Форум » Основной » Проблемные ситуации » Подвисает при подключении KeyboardHook
  • Страница 1 из 1
  • 1
Поиск: