|
1 / 1 / 0
Регистрация: 28.09.2007
Сообщений: 285
|
|
Как удобнее организовать библиотеку функций разработчика22.10.2007, 23:38. Показов 883. Ответов 8
Метки нет (Все метки)
При разработке я использую кроме своего проекта еще два своих OCX и DLL проекта;
в каждый приходится подцеплять одни и те же модули, содержащие некие универсальные функции, таким образом дублируя их в каждом из этих проектов. Можно ли как то собрать эти универсальные функции в одну библиотеку и использоавть ее в OCX проекте, DLL проекте, любом другом
0
|
|
| 22.10.2007, 23:38 | |
|
Ответы с готовыми решениями:
8
Как лучше организовать свою библиотеку : DLL или OCX Как создать библиотеку пользовательских функций
|
|
2 / 2 / 1
Регистрация: 19.07.2007
Сообщений: 737
|
|
| 23.10.2007, 16:21 | |
|
Сделай DLL
0
|
|
|
1 / 1 / 0
Регистрация: 28.09.2007
Сообщений: 285
|
|
| 23.10.2007, 23:46 [ТС] | |
|
Будучи помещены в DLL эти функции д.б. превращены в методы классов - иначе они не доступны в VB
0
|
|
|
YURA
|
|
| 24.10.2007, 07:21 | |
|
Напиши модуль с Declare
|
|
|
1 / 1 / 0
Регистрация: 28.09.2007
Сообщений: 285
|
|
| 25.10.2007, 19:52 [ТС] | |
|
Declare не помогает :
Создаю ActiveX.DLL в нее сую модули со своими функциями, причем , если модуль класса , даже пустой не создавать - ругается 'нет никаких публикуемых компонентов',Компилю DLL.Объявляю в новом проекте Declare свою функцию из созданного.Пытаюсь вызывать - говорит: Run Time Error 48, File not found <имя моей DLL> Так я ничего и не понял...
0
|
|
|
7 / 7 / 12
Регистрация: 13.02.2007
Сообщений: 1,255
|
|
| 25.10.2007, 22:22 | |
|
ActiveX dll - это библиотека содержащая ActiveX компоненты, так называемые COM объекты. COM - component object model. Прямо из названия вытекает, что дожен быть какой-то объект. Как известно объект - это экземпляр класса...
длинная цепочка, но вот мы и добрались, до того что в ActiveX библиотеками могут предоставляться только структуры вида класс.(Все это конечно не совсем верно, и терминология, которой я пользуюсь совершенно ужасная, но чтобы, как говориться, на пальцах объяснить...) Вот поэтому в Бейсике ActiveX dll будет создана только в том случае, если в ней существует хотя бы один класс. Если ты хочешь создать простую библиотеку, на подобие API-dll, тебе необходимо воспользоваться иными средствами разработки: VC++, Delphi, Borland Builder, ... С уважением, Владимир
0
|
|
|
|
|
| 26.10.2007, 01:40 | |
|
А ведь, действительно, интересно. Создаю DLL на Delphi
library dlllib; function MyMax(x, y :integer) :integer; begin if x>y then MyMax:=x else MyMax:=y; end; exports MyMax name 'MYMAX' begin end. На бейсике пишу Private Declare Function MYMAX Lib 'DLLLIB' (ByVal x As Long, ByVal y As Long) As Long ... L1 = MYMAX((5), (8)) ну и получаю на эту строку Run Time Error '49' Bad DLL calling convention Ну, и где чего подправить?
0
|
|
|
0 / 0 / 0
Регистрация: 03.08.2007
Сообщений: 61
|
|
| 26.10.2007, 09:36 | |
|
Пожалуй, через компонепт - желательно Global Multi Use. Тогда, кроме ссылки на компонент в проекте, не надо создавать экземпляры объектов в проекте, пользоваться 'общими' функциями (по-моему)без префиксов.
0
|
|
|
7 / 7 / 12
Регистрация: 13.02.2007
Сообщений: 1,255
|
|
| 27.10.2007, 15:56 | |
|
Попробуй указать _stdcall или ее аналог в Delphi перед объявлением и реализацией функции (или после - я уже не помню как это в Delphi прописывать).
Удачи, Владимир
0
|
|
| 27.10.2007, 15:56 | |
|
Помогаю со студенческими работами здесь
9
Как создать пользовательскую библиотеку процедур и функций Как организовать выполнение функций с постоянным интервалом
Разработать библиотеку функций Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Установка Qt Creator для C и C++: ставим среду, CMake и MinGW без фреймворка Qt
8Observer8 05.04.2026
Среду разработки Qt Creator можно установить без фреймворка Qt. Есть отдельный репозиторий для этой среды: https:/ / github. com/ qt-creator/ qt-creator, где можно скачать установщик, на вкладке Releases:. . .
|
AkelPad-скрипты, структуры, и немного лирики..
testuser2 05.04.2026
Такая программа, как AkelPad существует уже давно, и также давно существуют скрипты под нее. Тем не менее, прога живет, периодически что-то не спеша дополняется, улучшается. Что меня в первую очередь. . .
|
Отображение реквизитов в документе по условию и контроль их заполнения
Maks 04.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеСпецтехники", разработанного в конфигурации КА2.
Данный документ берёт данные из другого нетипового документа. . .
|
Фото всей Земли с борта корабля Orion миссии Artemis II
kumehtar 04.04.2026
Это первое подобное фото сделанное человеком за 50 лет. Снимок называют новым вариантом легендарной фотографии «The Blue Marble» 1972 года, сделанной с борта корабля «Аполлон-17». Новое фото. . .
|
|
Вывод диалогового окна перед закрытием, если документ не проведён
Maks 04.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2.
Задача: реализовать программный контроль на предмет проведения документа. . .
|
Программный контроль заполнения реквизитов табличной части документа
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2.
Задача:
1. Реализовать контроль заполнения реквизита. . .
|
wmic не является внутренней или внешней командой
Maks 02.04.2026
Решение:
DISM / Online / Add-Capability / CapabilityName:WMIC~~~~
Отсюда: https:/ / winitpro. ru/ index. php/ 2025/ 02/ 14/ komanda-wmic-ne-naydena/
|
Программная установка даты и запрет ее изменения
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2.
Задача: при создании документов установить период списания автоматически. . .
|