Вход | Регистрация
 

Коллеги, поможите с подключением ВК в тонком клиенте

Коллеги, поможите с подключением ВК в тонком клиенте
Я
   Гений 1С
 
11.08.20 - 16:26
Моя ВК написана на VB6, Native.
На толстом подключается успешно:

    ЗагрузитьВнешнююКомпоненту(СокрлП(ФайлDLL));
    AnvizUBIO_Компонента = Новый ("AddIn.AddInAnvizUBIO");


Вот озадачился сделать ее подключаемой на тонком. И никак не хочет.

    УстановитьВнешнююКомпоненту("ВнешняяОбработка.ТестПодключенияБиометрии.Макет.AddInAnvizUBIO");
    Результат = ПодключитьВнешнююКомпоненту("ВнешняяОбработка.ТестПодключенияБиометрии.Макет.AddInAnvizUBIO", "AddInAnvizUBIO", ТипВнешнейКомпоненты.Native);

Причем установить отрабатывает, а подключить нет.
Пробовал и подключать по непосредственному пути к ФайлDLL, никак.

Может какие-то нюансы, если ВК использует другие DLL? Потому что по сути она использует несколько DLL.
Кто подскажет, куда копать, тому 2.000 рубасов башляю, если поможет.
   бомболюк
 
1 - 11.08.20 - 16:40
А откуда вызывается код установки/подключения?
   Garykom
 
2 - 11.08.20 - 16:42
(0) Ты на VB6 написал Native ВК ?

Делись шаблоном ВК
   acht
 
3 - 11.08.20 - 16:43
(0) > на VB6, Native
Запасся попкорном
   Garykom
 
4 - 11.08.20 - 16:44
(0) Для начала уже изучал https://its.1c.ru/db/v839doc#bookmark:dev:TI000001195 ?
   Garykom
 
5 - 11.08.20 - 16:44
(3) ну а вдруг?
   Garykom
 
6 - 11.08.20 - 16:45
(3) VB6 это же не VB.Net а то что было до этого и оно вполне DLL умеет делать.
Вопрос умеет ли C++ совместимые а не просто COM
   Гений 1С
 
7 - 11.08.20 - 16:46
Вот проверил, NameDecl подключается:
https://its.1c.eu/db/metod8dev/content/5152/hdoc

Манифест там такой:
<?xml version="1.0" encoding="UTF-8" ?>


<bundle xmlns="http://v8.1c.ru/8.2/addin/bundle">;
    <component os="Windows" path="1CNameDecl_IEWin32.cab" type="plugin" object="1CNameDeclIE32.AddInServiceEx" arch="i386" client="MSIE" />
    <component os="Windows" path="1CNameDecl_IEWin64.cab" type="plugin" object="1CNameDeclIE64.AddInServiceEx" arch="x86_64" client="MSIE" />
    <component os="Windows" path="1CNameDecl_FF3Win32.xpi" type="plugin" object="@1C.ru/1CNameDeclFFWin32;1" arch="i386" client="Firefox" clientVersion="3.*"/>
    <component os="Windows" path="1CNameDecl_FF4Win32.xpi" type="plugin" object="@1C.ru/1CNameDeclFFWin32;1" arch="i386" client="Firefox" clientVersion="4.*"/>
    <component os="Windows" path="1CNameDecl_FF5Win32.xpi" type="plugin" object="@1C.ru/1CNameDeclFFWin32;1" arch="i386" client="Firefox" clientVersion="5.*"/>
    <component os="Windows" path="1CNameDeclWin32.dll" type="native" arch="i386"/>
    <component os="Windows" path="1CNameDeclWin64.dll" type="native" arch="x86_64"/>
</bundle>


Проверяю так:

&НаКлиенте
Процедура ПроверитьNameDeclТК(Команда)
    УстановитьВнешнююКомпоненту("ВнешняяОбработка.ТестПодключенияБиометрии.Макет.NameDecl");
    Результат = ПодключитьВнешнююКомпоненту("ВнешняяОбработка.ТестПодключенияБиометрии.Макет.NameDecl", "NameDecl", ТипВнешнейКомпоненты.Native);
    
    
    Если НЕ Результат Тогда
        ПоказатьПредупреждение(, "Ошибка подключения NameDecl!");
    Иначе
        ПоказатьПредупреждение(, "Подключение NameDecl прошло успешно!");
    КонецЕсли;
    
КонецПроцедуры
   Гений 1С
 
8 - 11.08.20 - 16:47
(6) это не COM, а Native API. Если бы COM, я бы просто создавал COM-Объект после регистрации его через regsrv32.exe
   Гений 1С
 
9 - 11.08.20 - 16:48
(2) ну раньше было в демо-примерах ВК на 1С и ВК на VB 6.0, компонента давно написана
   Garykom
 
10 - 11.08.20 - 16:48
(8) Вот делись шаблоном Native API (а не простого COM) на VB6
   Гений 1С
 
11 - 11.08.20 - 16:48
(1) с клиента. 32-разрядного.
   Garykom
 
12 - 11.08.20 - 16:48
(9) Ты упал? Там COM ВК старые ))
   Garykom
 
13 - 11.08.20 - 16:49
Результат = ПодключитьВнешнююКомпоненту("ВнешняяОбработка.ТестПодключенияБиометрии.Макет.AddInAnvizUBIO", "AddInAnvizUBIO", ТипВнешнейКомпоненты.COM);
   бомболюк
 
14 - 11.08.20 - 16:52
А вот те *.dll, которые она использует - они где лежат?
   Garykom
 
15 - 11.08.20 - 16:54
(14) не беги вперед про ExtCompT
   H A D G E H O G s
 
16 - 11.08.20 - 17:02
   Гений 1С
 
17 - 11.08.20 - 17:05
(14) в system32 или syswow64 (для 64-разрядной).
(12) гм, это мысль.
Вот файл проекта:
Type=Control
Reference=*\G{00020430-0000-0000-C000-000000000046}#2.0#0#C:\Windows\SysWOW64\stdole2.tlb#OLE Automation
Reference=*\G{4F0D4571-0E7B-11D1-A486-004095E1DAEA}#1.0#0#AddIn.tlb#V7 AddIn 1.0 Type Library
UserControl=AddInObj.ctl
Module=AddInAnvizUBIOMod; AddInAnvizUBIOMod.bas
Module=UBIO_DLL; UBIO_DLL.bas
Form=K:\Program Files (x86)\Microsoft Visual Studio\VB98\FingerForm.frm
ResFile32="AddInStr.RES"
Startup="(None)"
HelpFile=""
Title="VBTmpl"
ExeName32="AddInAnvizUBIO.dll"
Command32=""
Name="AddIn"
HelpContextID="0"
CompatibleMode="0"
CompatibleEXE32="AddInAnvizUBIO.dll"
MajorVer=1
MinorVer=0
RevisionVer=0
AutoIncrementVer=0
ServerSupportFiles=0
VersionCompanyName="1C"
CompilationType=0
OptimizationType=0
FavorPentiumPro(tm)=0
CodeViewDebugInfo=0
NoAliasing=0
BoundsCheck=0
OverflowCheck=0
FlPointCheck=0
FDIVCheck=0
UnroundedFP=0
StartMode=1
Unattended=0
Retained=0
ThreadPerObject=0
MaxNumberOfThreads=1
   Гений 1С
 
18 - 11.08.20 - 17:07
(13) COM тоже не прокатывает.

    УстановитьВнешнююКомпоненту("ВнешняяОбработка.ТестПодключенияБиометрии.Макет.AddInAnvizUBIO");
    Результат = ПодключитьВнешнююКомпоненту("ВнешняяОбработка.ТестПодключенияБиометрии.Макет.AddInAnvizUBIO", "AddInAnvizUBIO", ТипВнешнейКомпоненты.COM);
   Гений 1С
 
19 - 11.08.20 - 17:08
(13) Похоже что Гариком заработает сегодня 2000 рубасов.

Вот так прошло успешно:
    УстановитьВнешнююКомпоненту("ВнешняяОбработка.ТестПодключенияБиометрии.Макет.AddInAnvizUBIO");
    //Результат = ПодключитьВнешнююКомпоненту("ВнешняяОбработка.ТестПодключенияБиометрии.Макет.AddInAnvizUBIO", "AddInAnvizUBIO", ТипВнешнейКомпоненты.COM);

    Результат = ПодключитьВнешнююКомпоненту(ФайлDLL, "AddInAnvizUBIO", ТипВнешнейКомпоненты.COM);

Сча проверю еще чутка и если ок, переведу.
   Гений 1С
 
20 - 11.08.20 - 17:09
Гм, но она теперь спотыкается далее, не создает объект, посмотрю, может нужно какое другое имя давать:

    Результат = ПодключитьВнешнююКомпоненту(ФайлDLL, "AddInAnvizUBIO", ТипВнешнейКомпоненты.COM);
    
    AnvizUBIO_Компонента = Новый ("AddIn.AddInAnvizUBIO");
    ТекВерсия = AnvizUBIO_Компонента.About();
    Сообщить("Компонента AddInAnvizUBIO.dll версия: " + ТекВерсия);
   Garykom
 
21 - 11.08.20 - 17:20
(20) 1С от админа запусти и проверь что 1С 32 битная
   Гений 1С
 
22 - 11.08.20 - 17:20
(21) 32-битная. запущена от админа. Точно такая же в толстом тоже регистрирует нормально. гм...
   Гений 1С
 
23 - 11.08.20 - 17:21
Так тоже не создает:
    AnvizUBIO_Компонента = Новый ("AddIn.AddInAnvizUBIO.ComponentExtention");
   acht
 
24 - 11.08.20 - 17:22
Вот так вот гений и сэкономил 2000
   Garykom
 
25 - 11.08.20 - 17:24
(24) да он олень в (8) свою COM ВК же описал
   H A D G E H O G s
 
26 - 11.08.20 - 17:24
Гений, ну подключись отладчиком, хватить титьки мять
   Гений 1С
 
27 - 11.08.20 - 17:26
(24) (25) (26) Думаю, все же Гариком заработал свои 2к.
Вот так отработало:

    Результат = ПодключитьВнешнююКомпоненту(ФайлDLL, "AddInAnvizUBIO", ТипВнешнейКомпоненты.COM);

    
    Если НЕ Результат Тогда
        ПоказатьПредупреждение(, "Ошибка подключения сканера отпечатков UBIO!");
    Иначе
        ПоказатьПредупреждение(, "Подключение сканера отпечатков UBIO прошло успешно!");
    КонецЕсли;
    
    AnvizUBIO_Компонента = Новый ("AddIn.AddInAnvizUBIO.AddInAnvizUBIO");
    ТекВерсия = AnvizUBIO_Компонента.About();
    Сообщить("Компонента AddInAnvizUBIO.dll версия: " + ТекВерсия);


ссылку нагуглил тут:
ПодключитьВнешнююКомпоненту(): на сервере подключается, но не создаётся...

Счас, еще чутка погоняю в ТК и если все ОК, буду башлять. йопта.
   Гений 1С
 
28 - 11.08.20 - 20:02
где-то к концу недели проверю и переведу.
   acht
 
29 - 12.08.20 - 00:04
(28) > где-то к концу недели

Скажиете, а у вас брат-таксист в Москве есть?
   Гений 1С
 
30 - 12.08.20 - 21:34
Все получилось.
Написал в блог: https://geniy1s.ru/bolshoj-shag-dlya-anviz-biometrii/
Гарикому написал запрос на платежные реквизиты, 2к его.
 
 Рекламное место пустует
   Гений 1С
 
31 - 13.08.20 - 18:06
Перевел 2к Гарикому, еще раз спасибо за наводку мысли в верном направлении.
   Garykom
 
32 - 13.08.20 - 18:18
Подтверждаю, получил 2к


Список тем форума
Рекламное место пустует  Рекламное место пустует
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.