Вниз
Скачать: CL | DM;

dispinterface в 1С Ole Сервере   Найти похожие ветки 

← →
Serginio   (2002-10-17 16:01) [0]

Хотя тема 1С на Delphi и Использование dispinterface в 1С Ole Сервере абсолютно отличны друг от друга, но в итоге по синтаксису их использования очень сходны.
Наверняка это уже реализовано, кто может, поделитесь Ссылкой
Всем известно, что любой объект Автоматизации (IDispatch) использует 2 метода
1. GetIDsOfNames
2. Invoke
Первый возвращает dispid по названию метода, а второй по известному dispid вызывает нужный метод.

Все наименование методов и атрибутов объектов 1С нам известны и не составляет большого труда где-то ручками, а где и из метаданных создать объекты dispinterface.
Напримек
Doc:=obj.EvalExpr("СоздатьОбъект("Документ."+name+"")");
и вызываешь
NameRefs[0]:=PWideChar(WideString("НомерДок");
IDispatch(doc).GetIDsOfNames(GUID_NULL, @NameRefs,1,
LOCALE_SYSTEM_DEFAULT, @DID);
в DID получаем его dispid

В итоге получаем описание всех объектов.
Единственный минус dispinterface это невозможность наследования и для объектов имеющие одинаковые свойства и методы лучше разбивать на разные объекты а использовать их в паре с единой ссылкой на объект.
Скорость после применения dispinterface возрастает по сравнению с применение объектами Ole в 3-4 раза и по сравнению с 1С объектами в 1.5-2 раза.
Кроме увеличения скорости мы получаем псевдо ООП модель с вызовом методов через точку и строгий синтаксический контроль, последнее очень важно т.к. многие знают, что ошибку можно получить и через год.


← →
PalP   (2002-10-18 10:46) [1]

Не знаю, то ли я пишу, но есть возможность написания внешних компоненнт для 1С. В действительности, это dll, к которой можно обратится из 1С. Я сейчас этим и занимаюсь, но знаний, чтобы ответить на Ваш вопрос у меня не хватает (либо вопрос сформулирован нечетко). Возможно, поможет ссылка hare.ru



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.011 c
3-92325
S
2002-10-04 16:39
2002.10.28
Блокировка таблицы!


3-92341
btv
2002-10-02 15:37
2002.10.28
Какое условие для раскраски Grid


4-92780
Tihas
2002-09-13 21:05
2002.10.28
Как самым быстрым способом, прочитать BMP файл.


4-92783
d-coder
2002-09-14 21:52
2002.10.28
Проблемы с записью/чтением текстовых файлов!!!!!!!!


6-92631
Руль
2002-08-27 01:41
2002.10.28
Снова вопрос по извлечению текста из сайта




   Наверх