
codemaster писал(а):как я понял из твоих постов:
ты создал DLL на vb6 и пытаешся пользовать ее в 1С.
Возникли некоторые пробл. и ты хочешь произвести отладку кода DLL?
tyomitch писал(а):Eugenio писал(а):ДА.(англ.: YES, нем.: YA)
Нем. JA
Eugenio писал(а):Да
codemaster писал(а):очень интересует
Как создается твой объект (DLL) в 1С ( кинь кусок кода на 1С)
ЗагрузитьВнешнююКомпоненту("AddInA.dll")
ExtObject = СоздатьОбъект("AddIn.Object2");
ExtObject.ShowMessageBox("O!");
Eugenio писал(а):ЗагрузитьВнешнююКомпоненту("AddInA.dll")
ExtObject = СоздатьОбъект("AddIn.Object2");
codemaster писал(а):На закладке Debugging
ставим крыжик напротив Start Programm
ниже выбираем путь к 1С ......exe
Запускаем проект (F5) отлаживаем.
codemaster писал(а):не забудь про "правильный" Instancing у Object2 в твоей DLL
Private Sub Class_Initialize()
'
Debug.Print "Class_Initialize()"
'
End Sub
Eugenio писал(а):codemaster писал(а):не забудь про "правильный" Instancing у Object2 в твоей DLL
что именно проверить?
Eugenio писал(а):
- Код: Выделить всё
ЗагрузитьВнешнююКомпоненту("AddInA.dll")
ExtObject = СоздатьОбъект("AddIn.Object2");
ExtObject.ShowMessageBox("O!");
tyomitch писал(а): Меня терзают смутные сомнения..
tyomitch писал(а):Eugenio писал(а):
- Код: Выделить всё
ЗагрузитьВнешнююКомпоненту("AddInA.dll")
ExtObject = СоздатьОбъект("AddIn.Object2");
ExtObject.ShowMessageBox("O!");
"Меня терзают смутные сомненья..." (с)
Неужели 1С может подключать компоненты только по имени файла, а не по CLSID, как все нормальные COM-клиенты?
ЗагрузитьВнешнююКомпоненту("AddInA.dll")
codemaster писал(а):он должен быть MultiUse
codemaster писал(а):По уму надо в референсах подключить tlb (от 1С) а проекте реализовать пару интерфейсов .
Eugenio писал(а):tyomitch писал(а): Меня терзают смутные сомнения..
Да. Регистрация в реестре происходит при обращении к компоненте
tyomitch писал(а):А зачем тебе регистрация в реестре?
Попробуй просто выкинуть эту строчку. Тогда должно обращаться к отладчику VB, а не к файлу.
ExtObject = CreateObject("AddIn.Object2")
Eugenio писал(а):tyomitch писал(а):А зачем тебе регистрация в реестре?
Попробуй просто выкинуть эту строчку. Тогда должно обращаться к отладчику VB, а не к файлу.
Дело в том, что без этой строчки (Загрузить..) как раз требуется регистрация в реестре заранее: тогда можно не указывать файл
Я хотел компоненту не регать - чтобы облегчить перенос файла: бросил где-ндь в каталоге 1С и всё.. Т.е., эта регистрация при обращении из 1С - это не цель, это так себя ActiveX ведет, видимо.
А какой вообще механизм у VB отслеживания создаваемых клиентами объектов (связи между отлаживаем проектом и вызываемым клиентами модулем) - как он активизирует отладчик, когда кто-то юзает собранную dll?
Сейчас этот форум просматривают: AhrefsBot, SemrushBot и гости: 7