Имя: Пароль:
1C
 
Написание внешних компонент для 1С 8.x на Delphi
0 Polly5315
 
18.01.10
07:14
Здравствуйте. Замучил уже гугл. Ищу информацию по созданию внешних компонент на Delphi для 1С 8.x. Читал статью Книга знаний: Написание внешних компонент для 1С (Delphi) (Написание внешних компонент для 1С (Delphi)), однако пример, который там дается, восьмерка не переваривает:

ПодключитьВнешнююКомпоненту("Путь к DLL"); //Проходит нормально
ВК = СоздатьОбъект("AddIn.TestVK") //Проходит нормально
ВК.Сигнал(64) // или ВК.MessageBeep(64) - возникает ошибка "Метод объекта не обнаружен" :((((

Так же нашел еще одну статью, но она на C++ и мне сложно в ней разобраться (найду снова, сразу скажу адрес).

Если у кого есть мануалы по созданию внешних DLL компонент для восьмерки, очень прошу помочь.
1 чувак
 
18.01.10
07:18
(0) Конечная цель - получить "Биип!" ?
2 Polly5315
 
18.01.10
07:32
Не важно. Почему-то методы и свойства восьмерка не видит. А семерка видит.
3 чувак
 
18.01.10
07:36
В восьмерке это не катит :

ВК = СоздатьОбъект("AddIn.TestVK")

надо:

ВК = Новый ComОбъект("AddIn.TestVK")
4 Polly5315
 
18.01.10
07:56
Простите, описАлся. Семерочный код написал. Просто скопил из семерки. Стыдно, горю весь. Уверяю Вас, не в этом проблема, знаю все это.
5 Polly5315
 
18.01.10
08:06
Извините ради Бога, не хотел быть грубым, но счел ваш пост указанием на мою глупость.
6 MRAK
 
18.01.10
08:37
Где-то, кажись, на инфостарте, была компонента Исследователь СОМ-объектов, можно значения их свойств подсмотреть...
7 H A D G E H O G s
 
18.01.10
08:51
Выложи проект на файлообменник
8 Polly5315
 
18.01.10
09:07
Вреде бы ссылку в первом посту дал. Не мой проект.
9 H A D G E H O G s
 
18.01.10
09:20
(8) Этот шаблон я активно пользую. Все он работает.
10 Polly5315
 
18.01.10
09:22
в восьмерке?
11 H A D G E H O G s
 
18.01.10
09:25
(10) В ней самой
12 Polly5315
 
18.01.10
09:30
Удивительно!! Возможно, проблема в платформе? может так быть, что в ней чего-то не хватает?
13 H A D G E H O G s
 
18.01.10
09:31
Как минимум
ПодключитьВнешнююКомпоненту("Путь к DLL"); //Проходит нормально - фигня

ЗагрузитьВнешнююКомпоненту("Путь к DLL"); // Вот так надо
14 Polly5315
 
18.01.10
09:47
Так тоже делаю. Подключить - это если ком зарегистрирован в реестре. я так понимаю.
15 H A D G E H O G s
 
18.01.10
09:53
Сгенерируй новое значения для константы
CLSID_AddInObject в модуле AddinObject.pas
16 Polly5315
 
18.01.10
10:00
Подозревал, что не поможет. Действительно, не помогло. Проблема в другом. Понять бы в чем. Спасибо, что уделяете мне время..
17 Polly5315
 
18.01.10
10:04
может быть может играть роль версия.. сейчас тут на работе 8.1.14.72. дома 8.1.13.37
18 H A D G E H O G s
 
18.01.10
10:06
(17) У меня 14 релиз, счаст скачал, скомпилил, все покатило
19 H A D G E H O G s
 
18.01.10
10:06
(17) Ну давай RDP, TeamViewer, посмотрю
20 Polly5315
 
18.01.10
10:07
ох, не знаю, что это такое
21 Polly5315
 
18.01.10
16:15
Простите, чувствую себя чрезвычайно плохо от следующего открытия:
надо было писать:
ВК = Новый("AddIn.TestVK");
а не:
ВК = Новый COMОбъект("AddIn.TestVK").
Тему закрыть, мне позор.
Независимо от того, куда вы едете — это в гору и против ветра!