Подключить свою dll к Галактике/support/vip

Программирование на Атлантисе (VIP, FCOM, ARD), FastReport

Модераторы: m0p3e, edward_K, Модераторы

Ответить
san
Местный житель
Сообщения: 412
Зарегистрирован: 28 апр 2005, 11:34
Откуда: Галактика Млечный Путь

Подключить свою dll к Галактике/support/vip

Сообщение san »

Как подлючить свою dll так, что бы она автоматически загружалась при
запуске галактики/support/vip. Что то вроде добавить loadlibrary(mydll) в существующую dll/exe, возможно еще какой-то еще способ.
Нужно для использования в конфигураторе. Объявление ф-ции библиотеки из vip неподходят.
Кто что знает?
Goblin
Местный житель
Сообщения: 474
Зарегистрирован: 29 мар 2005, 17:49
Откуда: Сибирь-матушка
Контактная информация:

Сообщение Goblin »

Свой рес, в нем описание функции , в какой DLL она , и этот рес в конфиге подключать
Питаю патологические отвращение и ненависть в особо тяжелой и крайне запущенной формах к семейству программ Microsoft Business Solution !
Восславим господа Кришну за то, что у нас есть ГАЛАКТИКА !
san
Местный житель
Сообщения: 412
Зарегистрирован: 28 апр 2005, 11:34
Откуда: Галактика Млечный Путь

Сообщение san »

Goblin писал(а):Свой рес, в нем описание функции , в какой DLL она , и этот рес в конфиге подключать
Объявление ф-ции библиотеки из vip неподходят. Не будет видно из конфигуратора/вычислителя.
Maverick
Абориген
Сообщения: 943
Зарегистрирован: 29 мар 2005, 17:49
Откуда: External Developer
Контактная информация:

Сообщение Maverick »

тогда докомпилировать объявленные ф-ии в стандартный рес. в тот же extfun.res
Изображение
Знающий людей разумен.
Знающий себя просветлён.
Побеждающий людей силен.
Побеждающий самого себя могущественнен
san
Местный житель
Сообщения: 412
Зарегистрирован: 28 апр 2005, 11:34
Откуда: Галактика Млечный Путь

Сообщение san »

Maverick писал(а):тогда докомпилировать объявленные ф-ии в стандартный рес. в тот же extfun.res
Тоже не вариант, ф-ции видно только в вип-программах, по ctrl-f4 ее не вычислить. Также можно проверить в "Отчет о системе", подключеная через рез длл туда не попадает.
Maverick
Абориген
Сообщения: 943
Зарегистрирован: 29 мар 2005, 17:49
Откуда: External Developer
Контактная информация:

Сообщение Maverick »

тогда остается одно - вычислить ресурсники, которые цепляются и саппортом и галкой и докомпилять в него.
Изображение
Знающий людей разумен.
Знающий себя просветлён.
Побеждающий людей силен.
Побеждающий самого себя могущественнен
san
Местный житель
Сообщения: 412
Зарегистрирован: 28 апр 2005, 11:34
Откуда: Галактика Млечный Путь

Сообщение san »

Maverick писал(а):тогда остается одно - вычислить ресурсники, которые цепляются и саппортом и галкой и докомпилять в него.
Тоже не вариант, ф-ции видно только в вип-программах, по ctrl-f4 ее не вычислить. Также можно проверить в "Отчет о системе", подключеная через рез длл туда не попадает.
Screw
Слесарь-системщик
Сообщения: 304
Зарегистрирован: 29 мар 2005, 17:49
Откуда: р.Беларусь, Унитарное предприятие "ТОП СОФТ"
Контактная информация:

Сообщение Screw »

1. Пишем dll-ку.

2. Пишем файл с прототипами вида:

function XXX(тип, тип,..., var тип,...): тип; external 'имя dll-ки.dll';
procedure YYY(тип, тип,..., var тип,...); external 'имя dll-ки.dll';

Будьте осторожны с передачей параметров по ссылке - они передаются в библиотеку в виде указателей на TField.

3. Компилим этот файл в какой-нибудь ресурс.

4. Пишем код, использующий функции dll-ки.

5. Компилим этот код и подключаем при этом ранее собранный ресурс с прототипами функций.

Dll-ка будет подключаться динамически, в момент, когда будет произведена попытка загрузки интерфейса, использующего экспортируемые библиотекой функции. Написать стороннюю dll-ку так, чтобы она линковалась статически, невозможно по определению.
Виталий
san
Местный житель
Сообщения: 412
Зарегистрирован: 28 апр 2005, 11:34
Откуда: Галактика Млечный Путь

Сообщение san »

Вот этого и хочется:Написать стороннюю dll-ку так, чтобы она линковалась статически.
Maverick
Абориген
Сообщения: 943
Зарегистрирован: 29 мар 2005, 17:49
Откуда: External Developer
Контактная информация:

Сообщение Maverick »

Screw писал(а):1. Пишем dll-ку.

2. Пишем файл с прототипами вида:

function XXX(тип, тип,..., var тип,...): тип; external 'имя dll-ки.dll';
procedure YYY(тип, тип,..., var тип,...); external 'имя dll-ки.dll';

Будьте осторожны с передачей параметров по ссылке - они передаются в библиотеку в виде указателей на TField.

3. Компилим этот файл в какой-нибудь ресурс.

4. Пишем код, использующий функции dll-ки.

5. Компилим этот код и подключаем при этом ранее собранный ресурс с прототипами функций.

Dll-ка будет подключаться динамически, в момент, когда будет произведена попытка загрузки интерфейса, использующего экспортируемые библиотекой функции. Написать стороннюю dll-ку так, чтобы она линковалась статически, невозможно по определению.
Вау! Нас атакуют галактические монстры! ;-)
Изображение
Знающий людей разумен.
Знающий себя просветлён.
Побеждающий людей силен.
Побеждающий самого себя могущественнен
Screw
Слесарь-системщик
Сообщения: 304
Зарегистрирован: 29 мар 2005, 17:49
Откуда: р.Беларусь, Унитарное предприятие "ТОП СОФТ"
Контактная информация:

Сообщение Screw »

2san:
Вот этого и хочется:Написать стороннюю dll-ку так, чтобы она линковалась статически.
Это означает, что обращения к функциям твоей бибилиотеки должны быть встроены в код Галактики. Дальше всё просто: берем сырцы, правим их, компилим и наслаждаемся результатами титанического труда.
Виталий
Ответить