Имя: Пароль:
1C
1C 7.7
v7: Не могу загрузить внешнюю компоненту в 1с7.7
0 victuan1
 
18.07.16
15:23
При попытке загрузить внешнюю компоненту DKViki_1C8.dll из 1С 7.7 как COM-объект появляется ошибка:
<Неизвестная компонента> (отсутствует CLSID)

Зарегистрировать компоненту через regsr32 также не получается:
точка входа DllRegisterServer не найдена.

Техподдержка по данной ВК отвечает:
Мы не тестировали его работу в 7.7 и не заявляем его совместимость с ней. Но вы можете попробовать его работу с ней. Если компоненту получится у вас в вашу 1С загрузить, то значит и работать с ней сможете.
Драйвер и dll выполнены по формату 1С Совместимо, все методы есть в документации к 1С - http://its.1c.ru/db/metod8dev/content/4829/hdoc/_top/1с%20совместимо
1 poligraf
 
18.07.16
15:29
Вариант 1: права

Вариант 2: в техподдержку писать не про 77, а про regsvr32 с указанием версии Windows
2 victuan1
 
18.07.16
15:59
1. Права Админские
2. Виндовс 7 32-битная
3 Зая Бусечка
 
18.07.16
15:59
"1C8" как бы говорит. А код загрузки секретен?
4 victuan1
 
18.07.16
16:01
Код загрузки внешней компоненты?
5 Ёпрст
 
18.07.16
16:02
(0) есть же древняя вк у них, для клюшек. Возьми её
6 victuan1
 
18.07.16
16:04
(5) Она не умеет печатать QR-код!
7 Ёпрст
 
18.07.16
16:06
(6) тогда только пинать производителей касс или писать свою вк
8 KODin1C
 
18.07.16
16:08
Попробуй через ярлык от администратора: http://garayev.ru/kak-ispravit-oshibku-komponenta-v7plus-dll-ne-najdena/
9 victuan1
 
18.07.16
16:15
(7) первое и второе невозможно.
10 victuan1
 
18.07.16
16:21
(3)
    ПрогИд = VikiP;
    Если ПодключитьВнешнююКомпоненту("AddIn." + ПрогИд) = 0  Тогда
        ОписаниеРезультата = "не удалось загрузить внешнюю компоненту """ + Компонента + """";
11 Зая Бусечка
 
18.07.16
16:22
(9) В этом мире невозможно только уничтожить Россию. Всё остальное - в руках людей.
12 Зая Бусечка
 
18.07.16
16:23
(10) " загрузить внешнюю компоненту DKViki_1C8.dll из 1С 7.7 как COM-объект"
и (10) не коррелируют ну совсем никак.
13 Serginio1
 
18.07.16
16:28
А ты спроси у них может это Native ВК
14 victuan1
 
18.07.16
16:35
(12) Значит, я ошибся про "COM-объект". А если так:
    Если ЗагрузитьВнешнююКомпоненту(Компонента) = 0  Тогда
?
15 victuan1
 
18.07.16
16:43
(13) Спросил. Жду ответа.
В (0) содержится следующая информация:
Оборудование подключается к системе с помощью драйвера, разработанного по технологии создания внешних компонент. Технология определяет интерфейс взаимодействия между платформой и драйвером. Реализация драйвера возможна по технологии создания внешних компонент с использованием стандартных компонентных объектов для Windows (COM-интерфейс) и собственной технологии фирмы 1С – NativeAPI (динамическая библиотека для Windows или Linux). С помощью технологии NativeAPI можно создавать внешние компоненты, которые могут подключаться как в клиентском приложении, так и на сервере "1С:Предприятия", в том числе и в версиях для Linux.
16 victuan1
 
18.07.16
16:43
Что такое COM-интерфейс?
17 Serginio1
 
18.07.16
16:56
Это аналог ComОбъект Поддержка сом интерфейса ILanguageExtender
http://rsdn.ru/article/com/introcom.xml
18 victuan1
 
18.07.16
17:03
А ПодключитьВнешнююКомпоненту/ЗагрузитьВнешнююКомпоненту это какой "интерфейс"?
19 Serginio1
 
18.07.16
17:13
ЗагрузитьВнешнююКомпоненту только в 1С
ПодключитьВнешнююКомпоненту там в зависимости от вызова.
Там куча перегрузок
20 victuan1
 
18.07.16
17:48
Ну и как быть?
21 Зая Бусечка
 
18.07.16
18:15
(20) Использовать ВК, предназначенную для 77
22 Garykom
 
гуру
18.07.16
18:16
Написать обертку 1С77 совместимую с перегрузкой методов
23 victuan1
 
18.07.16
18:17
А почему regsvr32 не работает?
Потому что Nativve API?
24 victuan1
 
18.07.16
18:17
(22) И как ее писать? Я знаю только встроенный язык 1С 7.7
25 NikVars
 
18.07.16
18:19
(23) Винда какая?! Права какие?! Мало даешь инфо для детского "почему".
26 NikVars
 
18.07.16
18:19
27 NikVars
 
18.07.16
18:21
28 victuan1
 
18.07.16
18:21
(25) а (2) для кого было?
29 NikVars
 
18.07.16
18:22
(28) А (0) для кого?!
30 victuan1
 
18.07.16
18:23
(29) Для тех кто знает как решать подобную проблему.
31 NikVars
 
18.07.16
18:24
(29) Изначальная ошибка - 1С 7.7 не работает с ком.
См. Описание встроенного языка
Глава 40
Связь с внешними приложениями посредством
механизмов DDE и OLE Automation
А говоришь, что знаешь язык 1С 7.7...
32 NikVars
 
18.07.16
18:25
(31) --> (30)
33 Зая Бусечка
 
18.07.16
18:34
(31) Давно OLE перестало быть COM?
34 NikVars
 
18.07.16
18:37
(33) Если ты знаешь ответ на этот вопрос, то всегда сможешь запустить любой COM в среде 1С 7.7.
35 Зая Бусечка
 
18.07.16
18:40
(34) Абсолютно любой? Зуб даш на отсечение?
36 Woldemar177
 
18.07.16
18:45
Гы! У Заи есть мозги...
37 Garykom
 
гуру
18.07.16
18:46
(36) Но не факт что есть бюст
38 victuan1
 
18.07.16
18:48
(33) Верно. ОЛЕ это КОМ.
39 victuan1
 
18.07.16
18:49
Но поддерживает ли данная ВК ОЛЕ (или вообще КОМ)? Как выяснить?
40 Woldemar177
 
18.07.16
18:50
(37) Похъ на бюст - она все таки прогаммер похоже.
(38) Обратное утверждение верно?

ЗЫ где золотые деньки когда я писал внешние компоненты и внешние процедуры для 1C и Firebird?
41 Garykom
 
гуру
18.07.16
18:50
OLE 1 was built on DDE, which used windows messages to notify applications when source data changed, and typically passed data around by using HGLOBAL global memory handles.

OLE 2 was built on COM.
42 NikVars
 
18.07.16
18:51
(39) Спроси у Заи, дай ей зуб. Она зубы собирает.
43 Garykom
 
гуру
18.07.16
18:51
COM is an language neutral, object-oriented component model and ABI based on DCE RPC. As an RPC system it supported remote calls between processes on the same machine, and later, with DCOM, on different machines. Initially COM was used as part of the architecture of MAPI (which uses the COM object model but not the COM registration services) before being formally launched on it's own as a general object model complete with registry and object activation and other services. (Monikers and structured storage for example).
44 Garykom
 
гуру
18.07.16
18:51
OLE Automation has nothing to do with OLE - it's a branding connection only. OLE Automation is a visual-basic compatible subset of COM which supports basic datatypes only (for example no unsigned integers or structs) but including objects (COM interfaces).
45 Woldemar177
 
18.07.16
18:52
(42) Хорошо если только зубы :-D

PS а ведь когда то еще и на ассемблере мог определять тип процессора... Писал такую прогу...
46 victuan1
 
18.07.16
18:53
Ладно, я подожду.
47 Смотрящий
 
18.07.16
18:53
"точка входа DllRegisterServer не найдена" - выдется когда включен UAK.
Отключаешь УАК
_Ребутаешься_
Регистрируешь компоненту через regsvr32
Включаешь УАК
_Ребутаешься_
48 Garykom
 
гуру
18.07.16
18:53
OLE: This is a method of linking parts of one document to parts of another. For example, having a powerpoint slide with an Excel chart embedded into it. When the Excel spreadsheet is updated, the chart should update too. When you reopen Powerpoint, magically it has! (This example is a linked object). Embedded objects are the same only the excel spreadsheet doesn't exist in an external file, the data for the spreadsheet is contained within the powerpoint file.
49 Garykom
 
гуру
18.07.16
18:55
(47) Еще 64 бит может?
50 Pit0n_08
 
18.07.16
19:15
(0) Запускайте cmd от имени администратора и в ней выполняйте regsvr32.
51 victuan1
 
19.07.16
06:39
(27) Не подходит.
52 victuan1
 
19.07.16
06:44
(47), (50) Отключение UAC и использование md от имени администратора не помогло, та же ошибка: "точка входа DllRegisterServer не найдена"
53 victuan1
 
19.07.16
06:47
Я так понял, что пока не зарегистрирую DKViki_1C8.dll в системе, я не смогу ее загрузить в 1С 7.7. методом ЗагрузитьВнешнююКомпоненту или ПодключитьВнешнююКомпоенту.

Какие еще существуют способы загрузки ВК в 1с7.7, если ее не удается зарегистрировать в системе?
54 DrZombi
 
гуру
19.07.16
06:47
Еще не предлагали использовать Джаву, что бы достучаться до Ком объекта? ;)
55 DrZombi
 
гуру
19.07.16
06:47
(53) Да зачем оно тебе, если там есть Ком объект?
56 DrZombi
 
гуру
19.07.16
06:47
1С 7.7 хорошо дружит с Джавой
57 DrZombi
 
гуру
19.07.16
06:48
+ Ява или как там её, я в ней не селен :)
58 victuan1
 
19.07.16
06:52
(55) Джава, Ком-объекты не мой профиль. Можете показать на примере, как загрузить данную ВК?
59 victuan1
 
19.07.16
06:52
(8) Также не помогло, та же ошибка: "точка входа DllRegisterServer не найдена"
60 victuan1
 
19.07.16
06:53
Можно ли вообще проверить, поддерживает ли данная ДЛЛ КОМ или ОЛЕ? Может она поддерживает только Native API.
Если это так, то в 1С 7.7 не получится ее использовать никак?
61 DrZombi
 
гуру
19.07.16
06:53
(58) Побоку...

Держи, почитаешь, кода устанешь писать против ветра :)

http://catalog.mista.ru/public/137091/
62 victuan1
 
19.07.16
06:56
Да, видимо, не моё...
63 DrZombi
 
гуру
19.07.16
07:00
64 victuan1
 
19.07.16
07:00
Если что, у меня 1с7.7
65 victuan1
 
19.07.16
07:02
(63) Слишком сложно, за 5 мин не освоишь.
66 DrZombi
 
гуру
19.07.16
07:07
http://catalog.mista.ru/public/238584/

За пять минут не освоишь, согласен. А ты уверен, что программист твое?
Так то программист всегда учится, до старости :)
67 DrZombi
 
гуру
19.07.16
07:10
Вот еще примерчики

http://forum.script-coding.com/viewtopic.php?id=4049
68 DrZombi
 
гуру
19.07.16
07:29
А вот просто...

Jacob - вызов COM объекта
http://rsdn.ru/forum/java/4858910.hot

Как выполнить код на яве
Пример на паузе, но тебе нужен вообще сам код, в качестве шаблона
v7: как вставить паузу при пакетном проведении документов без ВК в цикле ?
Пауза в программе

Функция глПолучитьCOMОбъект(ИмяФайла="", ИмяКлассаCOM="") Экспорт
    ScrptCtrl=СоздатьОбъект("MSScriptControl.ScriptControl");
    ScrptCtrl.Language="vbscript";
    ScrptCtrl.AddCode("
    |Function GetCOMObject(StrFileName, StrClassName)
    |    Set GetCOMObject = GetObject(StrFileName, StrClassName)
    |End Function
    |");
    Возврат ScrptCtrl.Run("GetCOMObject",ИмяФайла, ИмяКлассаCOM);
КонецФункции
v7: COMSafeArray в 1С 7.7 или как быстро заполнить данные в Excel
69 victuan1
 
19.07.16
07:29
(66) я одинэсник. С дельфями, паскалями, визуалбейсиками завязал. И обратно не тянет. А главное, нет времени, занял нишу, и на остальное ресурсов не осталось. Могу задачу вынести на аутсорсинг.
70 DrZombi
 
гуру
19.07.16
07:31
(69) Я программист. Просто 1С доминировало в све время, поэтому в большинстве я 1С-ник :)
71 victuan1
 
19.07.16
07:44
(68) Как узнать ИмяКлассаCOM для той чудо ВК?
72 DrZombi
 
гуру
19.07.16
07:50
(71) В описании. нет?
73 DrZombi
 
гуру
19.07.16
07:51
74 victuan1
 
19.07.16
07:51
(72) Описания нет вообще. Только info.xml и manifest.xml
75 DrZombi
 
гуру
19.07.16
07:52
(74) Немного погугли :)
76 DrZombi
 
гуру
19.07.16
07:53
(74) Ты где взял "DKViki_1C8.dll" ?
Он в составе какого продукта?
77 victuan1
 
19.07.16
07:53
info.xml
<?xml version="1.0" encoding="UTF-8" ?>
- <drivers>
  <component progid="AddIn.VikiP" type="ФискальныйРегистратор" name="ДРИМКАС: Фискальный Регистратор VikiPrint" />
  </drivers>

manifest.xml
<?xml version="1.0" encoding="UTF-8" ?>
- <bundle xmlns="http://v8.1c.ru/8.2/addin/bundle">;
  <component os="Windows" path="DKViki_1C8.dll" type="native" arch="i386" />
  </bundle>
78 victuan1
 
19.07.16
07:54
(76) В составе фискального регистратора https://dreamkas.ru/fiskalnye-registratory/
79 victuan1
 
19.07.16
07:56
80 DrZombi
 
гуру
19.07.16
07:58
По сути можно пропустить через

http://4pda.ru/forum/index.php?showtopic=158223
81 DrZombi
 
гуру
19.07.16
08:00
(79) Слово COM, это COM-порт :)
82 DrZombi
 
гуру
19.07.16
08:01
Если только написать свой Ком объект с помощью ".net" :)
83 victuan1
 
19.07.16
08:03
(81) В заголовке упоминаются именно COM-объекты - "Интеграция с Viki Print через COM-объекты"
84 DrZombi
 
гуру
19.07.16
08:04
Как написать COM-объект для 1С на Visual Studio C# 2008
http://catalog.mista.ru/public/151246/

Пишется просто, по сути ".net" это текстовый файл, так что любой ".net" можно декомпилировать. Код у них открытый.

И да, единственная сложность было зарегестрировать ".net" библиотеку. Т.к. эдя этого нужна программка

Вот её придется поискать
https://msdn.microsoft.com/ru-ru/library/tzat5yw6(v=vs.110).aspx
85 DrZombi
 
гуру
19.07.16
08:04
(83) А по содержимому страницы, все об совсем другом :)
86 DrZombi
 
гуру
19.07.16
08:05
+(84) Она содержится в пакете установок.
Вопрос, только в каком :)
87 DrZombi
 
гуру
19.07.16
08:06
+(84) Visual Studio C# 2008
Мастер почти все за тебя сам напишет.
Но можно реально взять готовый пример на просторах сети
88 victuan1
 
19.07.16
08:15
Кому интересно глянуть - выложил ВК сюда https://yadi.sk/d/3bkHdzwMtR7oA
(80) пропустил через DLL Export Viewer, получил кучу "exported function" и не одной "COM type libraries"
Что делать дальше?
89 DrZombi
 
гуру
19.07.16
08:16
(88) Да нет там ком объекта :)
Порыщи на их ресурсе другую библиотеку, может будет.
90 victuan1
 
19.07.16
08:19
(89) Т.е. эту ВК никоим образом в 1С 7.7 запустить невозможно?
Другой библиотеки для моих задач (печать QR-кода) там нет.
Есть еще эта http://help.dreamkas.ru/hc/ru/articles/207531879-Ручная-регистрация-компоненты-dll-для-старых-1С-УТ-10-3-Розница-1-0-и-т-д-
но она не подходит, т.к. не печатает QR-код
91 DrZombi
 
гуру
19.07.16
08:20
+ Офегительные инструкции по программированию :)
Еще раз их прочитал.

Остается только одно, есть и написать свою ВК :)
92 DrZombi
 
гуру
19.07.16
08:21
(90) Ты созвонился с продавцами?
Может они чего знаю по поводу подключения библиотеки к примеру к Delphi?
93 victuan1
 
19.07.16
08:22
(92) Они ничего не знают. Наверное, им по заказу сделали эту длл, а связи с ее разработчиками нет.
94 Serginio1
 
19.07.16
08:25
(93) Попроси пример на 8 ке
95 DrZombi
 
гуру
19.07.16
08:26
96 DrZombi
 
гуру
19.07.16
08:27
+(95) Для толстого клиента :)
97 DrZombi
 
гуру
19.07.16
08:27
+ Драйвер лежит в макете.
98 victuan1
 
19.07.16
08:27
(95) Толку от этого примера нет в 1С7.7, т.к. она использует не эту технологию внешних компонент http://its.1c.ru/db/metod8dev/content/4829/hdoc/_top/1с%20совместимо
99 DrZombi
 
гуру
19.07.16
08:31
(98) Есть повод перейти на 8.х
100 DrZombi
 
гуру
19.07.16
08:32
Напиши свою ВК ;)
Инструкции расшифровки ком-а прописаны :)
101 DrZombi
 
гуру
19.07.16
08:34
Только если уповать на то что подойдет Драйвер в обработке для УТ 10

http://help.dreamkas.ru/hc/ru/articles/207129575-1С-Viki-Print-новые-1С-на-управляемых-формах-например-УТ-11-Розница-2-
102 Смотрящий
 
19.07.16
09:08
(52) Не ребутался значит
103 victuan1
 
19.07.16
09:15
Так каков диагноз?
Данную длл нельзя загрузить в 1С 7.7 никоим образом (COM/OLE/Java/Scripts)?
Только писать другую ВК или переходить на 1С8?
104 victuan1
 
19.07.16
09:17
(101) Я проверил старый драйвер, он не подходит, т.к. в нем нет поддержки печати QR-кода.
105 DrZombi
 
гуру
19.07.16
09:20
(104) Есть
106 DrZombi
 
гуру
19.07.16
09:21
(103) Купить новое оборудование с нормальной тех поддержкрй
107 victuan1
 
19.07.16
09:23
(106) Было уже приобретено 26 аппаратов, они фискализированы и в настоящий момент работают в 1С 7.7 со старым драйвером, в котором нет поддержки печати QR-кода.
108 victuan1
 
19.07.16
09:25
(105) Расшифруй свое "Есть". Мне техподдержка ответила следующее по поводу старого драйвера:
Данная компонента не поддерживает печать QR-кода. Это старый драйвер. Для 7.7 мы драйвер не актуализировали, но сделали его для конфигураций на 8.2 (Розница 1.0, УТ10.3). Драйвер во вложении, он не требует dll. Может его вы сможете адаптировать для вашей базы. Возможно, потребуется платформа 8.3.
Он разработан в соответствии с методикой разработки компонент для торгового оборудования.
109 DrZombi
 
гуру
19.07.16
09:30
(108) В УТ 10 есть такой момент. Подумал и в 7.7 должен быть.
110 victuan1
 
19.07.16
09:38
(109) Старый драйвер ни в 7.7 ни в УТ 10 печатать QR-код не будет.
Я правильно понял, поскольку в DKViki_1C8.dll нет ком-объектов, то его нельзя подключить в 1С 7.7 даже через OLE, джава и прочие извращения? Вообще никак нельзя, только если использовать 1С8 в качестве оле-сервера для управления драйвером?
111 victuan1
 
19.07.16
09:41
или писать драйвер для отправки команд на COM-порт.
112 DrZombi
 
гуру
19.07.16
09:48
(111) Через ".net" особо не усердствуй. Чет он медленно робит :)
113 DrZombi
 
гуру
19.07.16
09:49
(110) Это к гуру лучше обратиться :)
Я все время только слышал, но ни разу не удалось подружить компонету 8.х с 7.7 :)
114 DrZombi
 
гуру
19.07.16
09:49
+(112)  Но вдруг у тебя зашустрит, либо скорости хватит.
115 DrZombi
 
гуру
19.07.16
09:51
+ Держи

Работа с последовательным (COM, RS-232) портом из 1С:Предприятие 7.7 и 8.0
Книга знаний: Работа с последовательным (COM, RS-232) портом из 1С:Предприятие 7.7 и 8.0
116 victuan1
 
19.07.16
09:51
(114) Для работы с ФР скорость не важна.
Я так понял ты предлагаешь мне написать новую ВК для работы в 1С 7.7?
Меня пока интересуют способы за "5 минут" ))
117 DrZombi
 
гуру
19.07.16
09:52
(116) Смотри в (115) и в самый низ. Там ссылки на Ромикса
118 DrZombi
 
гуру
19.07.16
09:53
Порыщи на его ресурсе, может чет еще полезного найдешь.
119 DrZombi
 
гуру
19.07.16
09:53
+(116) 5 минут? Увольняйся. Этот проект не поддается 5-ти минутам.
Мин. недельку.
120 Serginio1
 
19.07.16
10:08
(112) Не знаю у кого чего там медленно, но работает там где другие не работают
Использование классов .Net в 1С для новичков
121 victuan1
 
19.07.16
10:20
(119) Откуда увольняться-то ;)))
122 NikVars
 
20.07.16
11:20
(120) И как это все использовать для целей ТС?!
123 Это_mike
 
20.07.16
11:23
(122) обертка?
124 NikVars
 
20.07.16
11:26
(123) Ты код приведи. ТС его проверит.
125 Это_mike
 
20.07.16
11:28
(124) он не оплатит...
126 DrZombi
 
гуру
20.07.16
11:30
(122) Через .net можно просто накидать обработчик к Ком порту. И использовать это в качестве обертки :)
127 NikVars
 
20.07.16
11:32
(126) Угу. Можно. Один уже накидал... Да объяснить не может...
128 DrZombi
 
гуру
20.07.16
11:33
(124) Жадный один-есник. Ему 5 минут надо... А это где то = 166,6666667 рублей от 5-ти минут. С учетом, что его ставка 2000 час :)
129 DrZombi
 
гуру
20.07.16
11:37
(127) Чего там объяснять? Пишется там все на С#.
Используется для этого халява от "Visual Studio C# 2008"

При этом знать С# особо не понадобится, если на просторах инета найти уже написанную библиотеку.
Брать тут...
http://catalog.mista.ru/public/161814/

Декомпелировать сею библиотеку и поправит. Она кривовато робит :)
130 Serginio1
 
20.07.16
11:39
(127) Там есть обработки генерирующие текст модуля. Вводишь полное имя класса и если нужно путь к DLL

Например для 7 ки вводим System.IO.Ports.SerialPort

и получаем



Перем врап,ОберткаСобытий;

           Функция СоздатьОбертку(ОбертываемыйОбъект)
            ПодключитьВнешнююКомпоненту("AddIn.GlobalContext1C");
            объект = СоздатьОбъект("AddIn.GlobalContext1C");
            ГлобальныйКонтекст = объект.ГлобальныйКонтекст;

            ОберткаСобытий = врап.СоздатьОберткуДляСобытий77(ОбертываемыйОбъект,ГлобальныйКонтекст);
           КонецФункции // СоздатьОбертку



// Свойства ОберткаСобытий.ПоследняяОшибка
//Событие:String Имя События в котором произошло исключение
//Данные:object Параметры события
//ИсключениеСобытия:Exception Ошибка произошедшая при вызове события
Функция ОшибкаСобытия()
    ПоследняяОшибка=ОберткаСобытий.ПоследняяОшибка;
    Сообщить("Не обработано событие "+ПоследняяОшибка.Событие);
    Сообщить(Врап.ВСтроку(Шаблон("[ОберткаСобытий." + ПоследняяОшибка.Событие + "]")));
    Сообщить("Ошибка");
    Сообщить(врап.ВСтроку(ПоследняяОшибка.Исключение))
КонецФункции  
//  Свойства ОберткаСобытий.ErrorReceived
// sender:System.Object
// e:System.IO.Ports.SerialErrorReceivedEventArgs

            Функция ErrorReceived()
               Сообщить("ErrorReceived "+Врап.ВСтроку(ОберткаСобытий.ErrorReceived));
            КонецФункции

//  Свойства ОберткаСобытий.PinChanged
// sender:System.Object
// e:System.IO.Ports.SerialPinChangedEventArgs

            Функция PinChanged()
               Сообщить("PinChanged "+Врап.ВСтроку(ОберткаСобытий.PinChanged));
            КонецФункции

//  Свойства ОберткаСобытий.DataReceived
// sender:System.Object
// e:System.IO.Ports.SerialDataReceivedEventArgs

            Функция DataReceived()
               Сообщить("DataReceived "+Врап.ВСтроку(ОберткаСобытий.DataReceived));
            КонецФункции

//  Свойства ОберткаСобытий.Disposed
// sender:System.Object
// e:System.EventArgs

            Функция Disposed()
               Сообщить("Disposed "+Врап.ВСтроку(ОберткаСобытий.Disposed));
            КонецФункции




Процедура ПриОткрытии()
    врап=СоздатьОбъект("NetObjectToIDispatch45");

КонецПроцедуры // ПриОткрытии
               //======================================================================
Процедура ОбработкаВнешнегоСобытия(Источник, ИмяСобытия, Данные)
             Если Источник = "System_IO_Ports_SerialPort" Тогда

                  Шаблон("[" + ИмяСобытия + "()]");
            КонецЕсли;
            КонецПроцедуры // ОбработкаВнешнегоСобытия
131 Serginio1
 
20.07.16
11:42
Ну а получить объект

Аналогично как и на 8 ке только там из-за разницы используемых типов нужно добавить

врап=СоздатьОбъект("NetObjectToIDispatch45");
    врап.УстЭтоСемерка();

Все примеры есть Использование классов .Net в 1С для новичков
132 DrZombi
 
гуру
20.07.16
11:42
(130) А "ОбработкаВнешнегоСобытия", как заставить робить в ".net"?
133 NikVars
 
20.07.16
11:44
(131) Имеем DKViki_1C8.dll которая прекрасно работает в 8-ке. Как ее прекрасную работу увидеть в 7-ке?
134 DrZombi
 
гуру
20.07.16
11:44
(131) Да ты гений!

вот как событие добавлять :)
http://catalog.mista.ru/public/417830/
135 Serginio1
 
20.07.16
11:45
(132) Я пример привел.
Динамическая компиляция для использования .Net событий в 1С

Там динамически компилируется обертка.
Функция СоздатьОбертку(ОбертываемыйОбъект)
            ПодключитьВнешнююКомпоненту("AddIn.GlobalContext1C");
            объект = СоздатьОбъект("AddIn.GlobalContext1C");
            ГлобальныйКонтекст = объект.ГлобальныйКонтекст;

            ОберткаСобытий = врап.СоздатьОберткуДляСобытий77(ОбертываемыйОбъект,ГлобальныйКонтекст);
           КонецФункции// СоздатьОбертку
136 Serginio1
 
20.07.16
11:49
(133) Если это Native BK то нужно писать обертку. Ничего сложного, но время. Но если там только работа с COM портом то используй 130. В примерах есть пример работы с COM пором для 8 ки. Можешь посмотреть как он работает.
137 DrZombi
 
гуру
20.07.16
11:51
(136) А как обертку навоять?
У тебя есть примерчики, подсмотреть?
Или статьи ? :)
138 NikVars
 
20.07.16
11:51
(136) Я так понял, что это даже для тебя не 5 минут.
139 DrZombi
 
гуру
20.07.16
11:52
(138) 5 или 10, у Автора вообще хоть неделю пиши.
Либо контора платит отдельную денежку и большую.
Либо автор сам разбирается и пишет свой блек-джек :)
140 DrZombi
 
гуру
20.07.16
11:53
+(138) Альтернативы нет :)
141 NikVars
 
20.07.16
11:54
(136) Ты методу дай. Простую и надежную, как автомат Калашникова.
(139) Не-е-е-е-е, Serginio1 сказал, что любой это сделает и засыпет Инфостарт своими .Нетовскими поделками.
142 DrZombi
 
гуру
20.07.16
11:55
(141) Не спугни. Человек хоть мне поможет :)
143 Serginio1
 
20.07.16
11:55
(138) Писать обертку над Native BK не пять минут.
А обертку над System.IO.Ports.SerialPort я написал.
Только

врап=СоздатьОбъект("NetObjectToIDispatch45");
    врап.УстЭтоСемерка();

sp= Врап.СоздатьОбъект("System.IO.Ports.SerialPort","COM" + НомерПорта);
     ПИ="System.IO.Ports.";
     sp.BaudRate= Врап.ToInt(9600);
     sp.Parity= Врап.ПолучитьТип(ПИ+"Parity").None;
     sp.StopBits= Врап.ПолучитьТип(ПИ+"StopBits").One;
     sp.DataBits= Врап.ToInt(8);
     sp.Handshake= Врап.ПолучитьТип(ПИ+"Handshake").None;

     СоздатьОбертку(sp);
     sp.Open();
144 Serginio1
 
20.07.16
11:57
(141) Ты для начала скажи, что тебе не понятно? И для какой версии 1С 7 ки или 8 ки?
145 DrZombi
 
гуру
20.07.16
11:58
(143) >>> Писать обертку над Native BK не пять минут.

У меня есть недели :)
Подскажи, хоть куда смотреть?
146 DrZombi
 
гуру
20.07.16
11:58
(144) Да ему нечего не надо. Он тебя троллит :)

Как написать обертку для Native BK, работающу под 1С 7.7? :)
147 NikVars
 
20.07.16
11:59
(143) Ты сначала очерти круг компетенции, которым полезны твои изыски.
Имеем такой круг незнания: C (чуток), 1С наше все (но кишка слаба для сертификов), с трудом регим длл, путам теплое с мягким, но имеем желание разбираться. В остальном слышал слова, видел код и все...
Теперь глянь свои навороты и скажи, как описанный мной перец поймет откуда там у тебя ноги растут и куда ты смотришь.
148 DrZombi
 
гуру
20.07.16
12:00
(147) Быстрое ваяние Ком приложения для работы с теми же Весами, как в (134). Для работодателей халява тоже нужна.
149 NikVars
 
20.07.16
12:01
(148) Мне нужна метода! Тут методы нет. Есть частный подход.
150 DrZombi
 
гуру
20.07.16
12:01
При этом, если в (129) добавить код из (134)...
Тогда драйвера в (129) будут куда полезней :)
151 Serginio1
 
20.07.16
12:02
(147) Что тебе непонятно в 130 и 147?
(146) Создаешь ВК на COM с реализацией ILangugeExtender а вот из неё уже вызываешь методы нативной ВК
152 DrZombi
 
гуру
20.07.16
12:02
(149) Мне нужен просто частный код. Заставить работать то, что стоит неплохих денег у других разработчиков. :)
153 Serginio1
 
20.07.16
12:02
(149) Читай статьи.
154 NikVars
 
20.07.16
12:05
(153) Вот ты и слился. Пришел в аудиторию, которая ждет комиксов, сверкнул кодом и сказал "Читай статьи"...
155 Serginio1
 
20.07.16
12:06
(147) Я начал с того, что мне нужно было обратиться к сайту неподдерживаемым 1С. А там сотня классов и десятки методов.
На COM вручную замучаешься писать COM обертки. Поэтому сделал эту компоненту которая оборачивает объекты .Net через COM.

Где это применять полно примеров. Там где из 1С нельзя выпольнить на чистом языке, но можно использовать библиотеки .Net или свои
156 Serginio1
 
20.07.16
12:07
(154) А для чего я их пишу, что бы здесь всё повторять?
157 Serginio1
 
20.07.16
12:08
>> Я начал с того, что мне нужно было обратиться к сайту неподдерживаемым 1С.

Я начал с того, что мне нужно было обратиться к Вэб сервису неподдерживаемым 1С.
158 DrZombi
 
гуру
20.07.16
12:18
Вызов native кода из C#. Маршалинг структур / Хабрахабр
https://habrahabr.ru/post/105232/
159 DrZombi
 
гуру
20.07.16
12:18
(154) Я не жду :)
160 NikVars
 
20.07.16
12:20
(155) Ок. Понятно. На практике получается, что затраченные усилия по решению разовой задачи не стоят этих усилий.
161 DrZombi
 
гуру
20.07.16
12:26
Использование C++ классов из native DLL в .NET C#
http://www.hardforum.ru/t71729/

Использование C++ классов из native DLL в .NET C#
162 Serginio1
 
20.07.16
12:26
(160) На практике получилось, что таких задач куча. Особенно на 7 ке. И на 8 ке их тоже не мало.
Например
1C Messenger для отправки сообщений, файлов и обмена данными между пользователям
.Net в 1С. Парсинг сайтов, multipart/form-data, gzip итд
http://catalog.mista.ru/public/434345/
163 DrZombi
 
гуру
20.07.16
12:26
164 Serginio1
 
20.07.16
12:30
165 DrZombi
 
гуру
20.07.16
12:31
How to: Call Native DLLs from Managed Code Using PInvoke

https://msdn.microsoft.com/en-us/library/55d3thsc.aspx

Что же. даже не плохо...
Остается изучить в C# не весь я зык, а только ряд фукнций :)
166 DrZombi
 
гуру
20.07.16
12:32
(164) Может быть. Но 7.7 меня интересует в последнюю очередь :)
Так, просто было любопытно, до какой степени вообще возможно :)
167 NikVars
 
20.07.16
12:32
(162) Мессенджер, парсинг сайтов... Ты думаешь бухгалтер догадается все это использовать в 7.7 при сдаче отчетности?!
Нет. Это твоя попытка найти жизнь своим умениям и навыкам.
168 Serginio1
 
20.07.16
12:33
(165) Только зачем тебе C# и натив?
Кроссплатформенное использование классов .Net в 1С через Native ВК.
Я писал для использования .Net классов для линукса.

А для решения задачи
.Native API для 1С 7.7 достаточно С++
169 NikVars
 
20.07.16
12:34
(162) Напиши универсальную проверку контрольных соотношений для всех деклараций с чтением данных из доступных источников.
Это да, полезно.
170 Serginio1
 
20.07.16
12:36
(167) Бухгалтеру много чего нужно поверь. Я использую на полную катушку.
(169) Если тебе полезно так возьми и  напиши. Я даю инструмент. А вот использовать его это твоё личное дело.
171 DrZombi
 
гуру
20.07.16
12:36
(168) И С++ или С#, для меня только зависит от возможности "Visual Studio C# 2008" и работы с .NET ;)
172 Serginio1
 
20.07.16
12:52
(171) Зачем тебе C# 2008 сейчас 2015 апдейт 3
Скачать можешь как бесплатно, так и
173 DrZombi
 
гуру
20.07.16
13:03
(172) Да я так к примеру. для ТС писал. :)
174 DrZombi
 
гуру
20.07.16
13:12
(172) Кстати, вроде в какой-то версии нет компилятора для .NET.   Я когда занимался этим, очень намучился в поисках сего приложения :)
175 Serginio1
 
20.07.16
14:14
(174) Компилятор то есть во всех. Есть различие в используемых .Net Framework языке (C# 6).
http://metanit.com/sharp/tutorial/
Сейчас актуальная 4.6.1 под неё сделана и моя компонента.
176 DrZombi
 
гуру
20.07.16
14:32
(175) Вернее я про программку для регистрации DLL для .NET
177 DrZombi
 
гуру
20.07.16
14:34
+ Regasm.exe (средство регистрации сборок)
178 Serginio1
 
20.07.16
15:35
(175) У меня с компонентой идет РегистрацияКомСервера.exe
А для регстрации NetObjetToIDispatch45.dll идет RegAsm.bat
179 victuan1
 
04.08.16
08:52
(0) Получил ответ от техподдержки по данной ВК:
"Эта dll является native api, как написано на сайте 1С.
Эта библиотека не требует регистрации через regsvr32.
К сожалению, мы пока драйвер для 7.7 не актуализировали и у меня нет информации, произойдет ли это."
180 NikVars
 
04.08.16
09:25
(179) Перевожу их ответ: "Доработок в будущем по 7.7 не будет. Это нам не интересно."