Посоветуйте литературу для написания dll на delphi.
эта dll использоваться в дальнейшем где будет?
т.е. какой будет механизм связывания с внешней программой: дельфевый, com, экспортируемые из dll функции?
т.е. какой будет механизм связывания с внешней программой: дельфевый, com, экспортируемые из dll функции?
из одной dll должны экспортироваться функции в dll, которую я должен написать, а из последней, должны экспортироваться функции в 1с-ку 8.1
А 1с какой интерфейс использует?
в смысле интерфейс? ну вообще свой, а взаимодействие должно проиходить через описанный класс функций объекта, который подгружается через метод
ЗагрузитьВнешнююКомпоненту("С:\Mydll.dll");
объект = Новый("ключ в реестре");
и уже обращается к фонкциям и процедурам через точку.
объект.<название фукции>.
ЗагрузитьВнешнююКомпоненту("С:\Mydll.dll");
объект = Новый("ключ в реестре");
и уже обращается к фонкциям и процедурам через точку.
объект.<название фукции>.
ЗагрузитьВнешнююКомпоненту("С:\Mydll.dll");ЗагрузитьВнешнююКомпоненту выполняет то же, что и regsvr32.exe ? А то непонятно, зачем подгружать вручную дллку с COM-объектом.
объект = Новый("ключ в реестре");
В общем, для начала можно почитать раздел справки "Creating simple COM servers".
Фунцкии из длл экспортировать в дельфи можно так:
const mydll = 'my.dll';
function foo(param:integer):integer; stdcall; external mydll;
procedure __bar(param: integer; param2: PChar); stdcall; external mydll name 'bar';
ЗагрузитьВнешнююКомпоненту выполняет то же, что и regsvr32.exe ? А то непонятно, зачем подгружать вручную дллку с COM-объектом.нет, ЗагрузитьВнешнююКомпоненту используется после того, как dll в регистре.
нет, ЗагрузитьВнешнююКомпоненту используется после того, как dll в регистре.Тогда это вообще странно, т.к. COM сам подгружает все нужные библиотеки, их явно не нужно указывать. Во всяком случае, я впервые вижу чтобы это требовалось.
Com там по-другому зоздается.
Объект = Новый COMОбъект("Excel.Application");
И там, действительно, все методы сразу подключаются. а это создание внешней компоненты
кароч соль не в этом, мне литература нужна.
Объект = Новый COMОбъект("Excel.Application");
И там, действительно, все методы сразу подключаются. а это создание внешней компоненты
кароч соль не в этом, мне литература нужна.
Что тогда из себя представляет эта штука: объект = Новый("ключ в реестре");, если не создание Com-объекта (ежели ключ из раздела HKCR) ?
Я же написал, это объект внешней компоненты, я не знаю, что он из себя представляет, но мне нужны его функции
Я же написал, это объект внешней компоненты, я не знаю, что он из себя представляет, но мне нужны его функцииНу тогда тебе нужно в первую очередь ботать справку 1с чтобы понять, что из себя представляют эти загадочные компоненты. Ведь как-то придётся с ним взаимодействовать, так что либо там какие-то извраты из обычных функций (маловероятно либо C++-ные объекты (их с delphi не подружить либо там что-нибудь COM-подобное (это, по идее, вполне можно эмулировать, если используется интерфейс максимально похожий на COM либо самый настоящий COM (тогда надо ботать вышеуказанный хелп).
Для "ЗагрузитьВнешнююКомпоненту" есть соответствующая книжечка от 1Ц - "Технология создания внешних компонент".
Если тебе не принципиально пользоваться фишкой типа "расширение языка" и прочее, то ты можешь создать обычный COM объект и не заморачиваться с внешними компонентами 1С.
Еще момент, сейчас в недрах 1С зреет "1С Предприятие 8.2", где будет новая технология создания внешних компонент, которая к тому же будет доступна как на "Клиенте", так и на "сервере", более того, сервер может быть и под Никсами. Описание этой новой версии выложено в пользовательском разделе на сайте 1С
Если тебе не принципиально пользоваться фишкой типа "расширение языка" и прочее, то ты можешь создать обычный COM объект и не заморачиваться с внешними компонентами 1С.
Еще момент, сейчас в недрах 1С зреет "1С Предприятие 8.2", где будет новая технология создания внешних компонент, которая к тому же будет доступна как на "Клиенте", так и на "сервере", более того, сервер может быть и под Никсами. Описание этой новой версии выложено в пользовательском разделе на сайте 1С
Оставить комментарий
UAV27
с наилучшем соотношением сложность/качество.