Шаблон внешней компоненты на Delphi

Публикация № 15527

Программирование - Внешние компоненты

20
Это мой шаблон ВК на Delphi

Никогда не нравилось предлагаемое 1С решение обработки событий и методов ВК из делфи. Решил малость упростить себе жизнь)))
Что получилось - в архиве.
За код не пинать. Здоровая критика и пожелания приветствуются

20

Скачать файлы

Наименование Файл Версия Размер
ШаблонВК.rar
.1202729917 181,84Kb
25.09.09
286
.1202729917 181,84Kb 286 Скачать бесплатно

См. также

Специальные предложения

Комментарии
Избранное Подписка Сортировка: Древо
1. O-Planet 6947 13.02.08 19:34 Сейчас в теме
Понравилось. А можешь продемонстрировать, как с помощью твоего класса Object1C вызывать методы объектов по их названию?
2. Chieftain 92 14.02.08 09:46 Сейчас в теме
(1) Что-то не совсем понял, что ты имел ввиду...
В асю постучись - подскажу
3. Chieftain 92 28.02.08 18:02 Сейчас в теме
Нууу... Народ, что молчим? Блина, но ведь отрицательные отзывы - это тоже неплохо)))
11. deltaone 3 09.02.09 17:15 Сейчас в теме
(3) По поводу доработок - на ум приходит только одно - не плодить функции записи/чтения свойств, вместо 2х функций сделать 1-у и упрвлять операцией через case ...

function object.UserModeRW(mode: TMode, ...)
begin
case mode of
m_get_value:
....
m_set_value: ;
....
end;
end;

и обработку исключений убрать из пользовательских функций установки значений ( перенести в вызов метода объекта установки значения - короче повыше уровнем ;)
4. jackevsen 01.03.08 19:17 Сейчас в теме
У меня вопрос на засыпку.В Borland Builder C++ можно написать внешнюю компоненту?
8. artbear 1124 28.05.08 08:28 Сейчас в теме
(4) Можно без проблем, полная аналогия с Дельфи.
5. Chieftain 92 01.03.08 23:19 Сейчас в теме
6. jackevsen 02.03.08 13:06 Сейчас в теме
Просто на сайте 1С написано,что поддерживаются такие среды разработки как Visual Studio,Borland Delphi.Да и в сети ищу шаблон компоненты именно для Borland Builder C++,а найти никак не могу.Есть для всего,но для этой среды разработки нету.Лично я проблем не вижу в этой среде разработки,но мало ли....
7. Chieftain 92 02.03.08 20:21 Сейчас в теме
Ну вообще-то я с сями не дружу, но вроде там тоже проблем не было
9. codeLocker 78 02.07.08 15:04 Сейчас в теме
А есть ли у кого пример на Delphi для восьмерки?
10. deltaone 3 09.02.09 17:03 Сейчас в теме
(9) Закомментируй строчку помеченную (!) будет нормально работать вызов функций восьмерки, если не надо функции глобального контекста дергать, то ничего изменять не надо - оно и так работает на восьмой платформе.

[AddInLib.pas]
if GlobalContext then
begin
obj := OleVariant(p1cv7).AppDispatch;
(!) // IDispatch(obj)._AddRef;
end;

(1) Вызов функций глобального контекста

function TWaspVK.FN_RUN(var Params: OleVariant): OleVariant;
var
arg : TParams;
begin
arg := TParams.Create(1);
arg[1] := Params[2];
CallFunction(VarToStr(Params[1]), '', True, arg, Result);
end;

в коде 1с зовется так:

WASP.RUN("Сообщить", "afadsfasdf");

P.S. Автору зачот !!!! Просто нет других слов ...
12. deltaone 3 09.02.09 17:22 Сейчас в теме
Хы, и вопрос, совсем забыл ;)

Как вызвать функции неглобального контекста, которые описаны в общих модулях

CallFunction('SHARED.CleanString', '', True, arg, Result);

нифига не катит ;(

Догадываюсь, что надо получить контекст SHARED только как его получить х.з. ;(
13. zll32 20.04.09 18:04 Сейчас в теме
SHARED – Это как раз второй параметр функции, который у тя пустой да еще и строкового типа =)

Например чтобы вызвать функцию из модуля обработки нужно в 1С так писать
CallFunction('CleanString', ОбработкаОбъект, True, arg, Result);
Только функция 'CleanString' должна быть Экспортная
14. zll32 21.04.09 10:40 Сейчас в теме
Футы, не истина а ложь конечно
CallFunction('CleanString', ОбработкаОбъект, FALSE, arg, Result);
15. mshi 16.02.18 12:36 Сейчас в теме
Отличный шаблон! Может он и медленнее в работе, чем стандартный от 1с или romix, но очень красивый и удобный в реализации.
Спасибо!

Не понравилось, что при поиске метода или свойства в цикле приводится к верхнему регистру. Вынес из цикла и добавил свойства идентификаторов в верхнем регистре.
16. Chieftain 92 16.02.18 16:07 Сейчас в теме
(15) Удивительно! 10 лет прошло, а еще кто-то пользуется)) Причем нетипично часто, для такого рода публикаций.
Оставьте свое сообщение