Не срабатывает внешнее событие на форме из внешней компоненты #787245


#0 by rosbes
Создаю внешнюю компоненту Native. Свойства компоненты видно, методы и функции вызываются, параметры передаются а внешнее событие при  m_iConnect->ExternalEvent не отрабатывает.
#1 by H A D G E H O G s
c Native это не работает
#2 by Волшебник
Обратитесь к разработчику внешней компоненты. ;)
#3 by H A D G E H O G s
Для native можно юзать интерфейс IConnectionPointContainer = interface ['{B196B284-BAB4-101A-B69C-00AA00341D07}'] Я делал для Дельфи, как в этом вашем плюснутом и-фейсе - не знаю. Да и я потом забил на native и сделал все на православном COM
#4 by Fragster
а как 1с сканер штрихкодов работает?
#5 by Кирпич
у меня всегда работало
#6 by Serginio1
По умолчанию очередь сообщений равна 1. Если сообщение не обработано, а в очередь ставится событие, то оно сглатывается 1С.
#7 by Serginio1
m_iConnect->SetEventBufferDepth(lDepth);
#8 by Serginio1
Ну и посмотри в отладчике, что возвращает m_iConnect->ExternalEvent
#9 by Serginio1
Ну и не забыть на форме подписаться на событие
#10 by rosbes
SetEventBufferDepth(40000) На форме стоит &НаКлиенте Процедура ВнешнееСобытие(Источник, Событие, Данные) ... Внешнее событие не срабатывает
#11 by Fragster
а процедура выбрана в свойствах формы как обработчик события?
#12 by Кирпич
вотьимана
#13 by rosbes
Да
#14 by Кирпич
врешь небось
#15 by Кирпич
вот такое точно есть?
#16 by Serginio1
Это не подписка на событие. Это просто метод. Подписаться на событие ты можешь через выбор в форме ВнешнееСобытие Либо ДобавитьОбработчик Форма.ВнешнееСобытие, Обработка.ВнешнееСобытие;
#17 by Кирпич
Так то, по умному, нужно код смотреть. Второй день ждать прихода телепата как то не по научному. Может у тебя там объект ВК - локальная переменная, которая сдыхает прежде чем прилетит событие.
#18 by Serginio1
Вернее
#19 by Serginio1
Суть поставить в очередь 3 строки.
#20 by Кирпич
Код будет? Или будем неделю гадать в каком месте ты начудил? :)
#21 by Serginio1
Для достоверности Можешь взять любую ВК и проверить на своей форме
#22 by rosbes
Абсолютно точно
#23 by Кирпич
объект ВК глобальная переменная?
#24 by Кирпич
чота автор на американских горках чтоли катается. отвечает раз в 10 минут. вот короче пример как в 1с это делается. тут типа ВК запускает по команде Старт поток, который генерит события. По команде Стоп перестает.
#25 by rosbes
Спасибо! Была не глобальная. Я наверно где то что то упустил когда читал. Это вообще где то написано в руководстве?
#26 by Кирпич
да нет. это вроде очевидно и само собой разумеется.
#27 by rosbes
А в обработчике внешнего события есть гдето ссылка на глобальную переменную? С чего это должно быть очевидно?
#28 by Кирпич
я не знаю как оно там внутри устроено. знаю, что чтобы от сканера были события, должен существовать сам сканер(его переменная)
#29 by rosbes
Всем спасибо!
#30 by Serginio1
Вообще то, при обнулении ссылки на ВК она дестроитсяю Значит ты не обрабатываешь. Типа такого long DestroyObject(IComponentBase** pIntf)     {
#31 by Serginio1
Да и вообще DLL должна была выгрузиться
#32 by Кирпич
ага. если она не на .NET написана :)
#33 by Кирпич
а это тут вообще не причем
#34 by Serginio1
И на .Net выгружает. Просто у меня были проблемы с повторной инициализацией домена и прочего. Поэтому, для того что бы не выгружалась, я второй раз её загружаю. Причем. Должна вызвать исключение или упасть, а по уму еслизадесроена то и вызывать ничего не должна. А он утверждает в 10, что работает.
#35 by Кирпич
"И на .Net выгружает." чота не видел такого. есть пример ВК на .NET которая выгружается?
#36 by Кирпич
"Должна вызвать исключение или упасть". фиг знает чо он там понапрограммировал. молодой, горячий...
#37 by Serginio1
Да и как бы Native ВК на .Net не бывает. Бывает нативная ВК использующая управляемые библиотеки. Хотя в принципе можно и сварганить на .Net используя собственную VMT. Бери мою ВК. Я специально делаю Врап.ЗагрузитьDLL(ИмяФайла);
#38 by Serginio1
Еще. Но еще раз это нативная ВК внутри использующая .Net
#39 by Cool_Profi
1с внешние компоненты не выгружает
#40 by Кирпич
да нафиг мне этот весь геморрой. у меня и без .NET всё работает. был бы я школьник, который ничего кроме шарпа не знает, другое дело. а так нафиг.
#41 by Кирпич
NativeAPI вроде выгружала
#42 by Serginio1
А кто тебя заставляет? Ты просил ВК в 35, я тебе дал. К сожалению, 1С ки и Шарпа не знают кстати, а ты школьники.
#43 by Кирпич
"А кто тебя заставляет?" ну я просто думал, что там будет пара строчек и dll будет выгружаться. А там какие то танцы с бубнами.
#44 by Serginio1
Вот странный ты. Пишешь, что не школьник, а в твоем понимании Native ВК на .Net это пара строчек.
#45 by HardBall
Народ, поделитесь пустым шаблоном Native ВК на .NET. Который бы  отрабатывал при ПодключитьВнешнююКомпоненту(ИмяВК);         net = Новый(ИмяВК);
#46 by Serginio1
Читай
#47 by Serginio1
Если ПодключитьВнешнююКомпоненту(ИмяВК); то это COM Смотри
Тэги: 1С 8
Ответить:
Комментарии доступны только авторизированным пользователям

В этой группе 1С