Форум программистов, компьютерный форум, киберфорум
QBasic
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 4.98/43: Рейтинг темы: голосов - 43, средняя оценка - 4.98
 Аватар для bedvit
1210 / 261 / 22
Регистрация: 20.05.2016
Сообщений: 1,147
Записей в блоге: 22

Подключить библиотеку dll

01.03.2017, 09:35. Показов 13303. Ответов 166
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Данным диалектом Бейсика не пользуясь, но иногда здесь бываю. Решил немного поучаствовать. Собственно вопрос в следующем: можно ли пользоватся сторонними библиотеками в этом диалекте, насколько сложен процесс использования? Цель - есть своя xll для VBA, можно убрать обертку будет dll, выложу здесь для тех кто много считает, большими числами) (Гугл не спрашивал ибо важно понять, есть целесообразность в данном продукте?)
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
01.03.2017, 09:35
Ответы с готовыми решениями:

Не получается подключить библиотеку Unmanaged.dll (Firefox nss3.dll)
Здравствуйте, начал изучать c#, очень понравилась тема декриптования, для начала решил из исходников собрать приложение для декриптования и...

Подключить библиотеку dll
Имеется программа nircmd.exe, которая с помощью батника позволяет выполнять различные комманды К примеру запуск батника NirCmd.exe exec...

Как подключить dll библиотеку?
Здраствуйте, есть такой вопрос, как можно подключить *.dll библиотеку к код блокс или к вижал студио?

166
Кормпилятор
 Аватар для Quiet Snow
5044 / 1718 / 409
Регистрация: 25.04.2010
Сообщений: 4,827
Записей в блоге: 2
02.03.2017, 18:50
Студворк — интернет-сервис помощи студентам
Цитата Сообщение от bedvit Посмотреть сообщение
Выходит dll нет смысла в данной ситуации делать, хотя идея была и Михаилу было бы интересно. Я так понял могут быть сложности с подключением.
Тут вопрос больше целесообразности. Где вообще это применяется? А то вы сделаете, а использовать
никто не будет, зачем вам тратить лишнее время, сделайте лучше видео туториал по тому, что у вас
уже есть, т.е. как подключать модуль как его использовать, назначение функций. В макросах
ничего сложного нет, любой программер прыгнет на VBA, если будет потребность.

Да и что-то подсказывает, что разработать алгоритм для асма будет по времени быстрее, чем
портировать эту матрёшку с кучей обёрток.
0
 Аватар для bedvit
1210 / 261 / 22
Регистрация: 20.05.2016
Сообщений: 1,147
Записей в блоге: 22
02.03.2017, 19:14  [ТС]
Возможно есть смысл использовать библиотеки MPIR или GMP, они по-моему с неуправляемым кодом.

Добавлено через 18 минут
Цитата Сообщение от Quiet Snow Посмотреть сообщение
прыгнет на VBA, если будет потребность
. Если будет потребность я всегда здесь, здесь же и собственно библиотека в последней редакции.
Цитата Сообщение от Quiet Snow Посмотреть сообщение
портировать эту матрёшку с кучей обёрток.
В какой то степени согласен, для других продуктов возможно больше подойдут библиотеки отмеченные выше. Моя же делалась для Excel (vba).
0
Модератор
10067 / 3912 / 885
Регистрация: 22.02.2013
Сообщений: 5,863
Записей в блоге: 79
02.03.2017, 23:19
С COM работать очень даже просто. Ищешь DllGetClassObject, запрашиваешь IClassFactory, создаешь нужный объект с нужным интерфейсом и все. Можно работать хоть из ассемблера.
https://www.cyberforum.ru/blog... g3550.html - вот тут показано как нативно работать с COM либами.
0
 Аватар для bedvit
1210 / 261 / 22
Регистрация: 20.05.2016
Сообщений: 1,147
Записей в блоге: 22
03.03.2017, 15:55  [ТС]
The trick, спасибо за инфу. Это для VB6?
0
 Аватар для bedvit
1210 / 261 / 22
Регистрация: 20.05.2016
Сообщений: 1,147
Записей в блоге: 22
26.03.2018, 22:49  [ТС]
Но вот, дошли руки до долгостроя, обернул в COM.
Собственно сам Продукт.

Цитата Сообщение от m-ch Посмотреть сообщение
bedvit, Думаю, что есть смысл сделать в виде dll, которая будет подключатся в любом современном языке т.ч. в FreeBasic (для меня это интересно)
Господа, протестируем ?
0
Эксперт по электронике
7174 / 3350 / 345
Регистрация: 28.10.2011
Сообщений: 13,200
Записей в блоге: 7
26.03.2018, 23:21
Почему с COM интерфейсом? Это ведь требует регистрации в системе, для чего нужны права администратора. Для приложений без установщика не подойдет.
Лучше бы сделали процедурную DLL.
0
Модератор
10067 / 3912 / 885
Регистрация: 22.02.2013
Сообщений: 5,863
Записей в блоге: 79
26.03.2018, 23:31
Цитата Сообщение от locm Посмотреть сообщение
Почему с COM интерфейсом? Это ведь требует регистрации в системе, для чего нужны права администратора. Для приложений без установщика не подойдет.
Лучше бы сделали процедурную DLL.
Нет.
0
 Аватар для bedvit
1210 / 261 / 22
Регистрация: 20.05.2016
Сообщений: 1,147
Записей в блоге: 22
27.03.2018, 08:12  [ТС]
locm, это не требует прав администратора. Процедурные подходят для одних компиляторов, не подходят для других. COM читается на многих.

Добавлено через 3 минуты
locm, вы почитайте инфо по ссылке. Там я все показал.
0
Эксперт по электронике
7174 / 3350 / 345
Регистрация: 28.10.2011
Сообщений: 13,200
Записей в блоге: 7
27.03.2018, 12:02
Цитата Сообщение от bedvit Посмотреть сообщение
не подходят для других
Хотите сказать что многие языки/компиляторы не могут работать с WinAPI LoadLibrary и GetProcAddress?
Загрузка COM значительно сложнее.
0
Модератор
10067 / 3912 / 885
Регистрация: 22.02.2013
Сообщений: 5,863
Записей в блоге: 79
27.03.2018, 12:16
Цитата Сообщение от locm Посмотреть сообщение
Загрузка COM значительно сложнее.
CoCreateInstance
0
Эксперт по электронике
7174 / 3350 / 345
Регистрация: 28.10.2011
Сообщений: 13,200
Записей в блоге: 7
27.03.2018, 12:52
Цитата Сообщение от The trick Посмотреть сообщение
CoCreateInstance
Для этого нужно регистрировать dll. А кроме этого нужно вызывать еще и методы...
0
Модератор
10067 / 3912 / 885
Регистрация: 22.02.2013
Сообщений: 5,863
Записей в блоге: 79
27.03.2018, 12:54
locm, не нужно. Чем вызов метода отличается от вызова экспортируемой функции?
0
 Аватар для bedvit
1210 / 261 / 22
Регистрация: 20.05.2016
Сообщений: 1,147
Записей в блоге: 22
27.03.2018, 13:33  [ТС]
locm, вы хотите сказать COM придумали зря для передачи объектов? Каким образом мне передать объект со свойствами к пример в VBA? или в 1С? Как WinAPI LoadLibrary и GetProcAddress это решают? Смысл именно в передачи объекта с методами, свойствами, а не функций.
0
Модератор
10067 / 3912 / 885
Регистрация: 22.02.2013
Сообщений: 5,863
Записей в блоге: 79
27.03.2018, 14:44
Цитата Сообщение от bedvit Посмотреть сообщение
Как WinAPI LoadLibrary и GetProcAddress это решают
Это в определенных случаях часть этого механизма (in-proc сервера).
0
Эксперт по электронике
7174 / 3350 / 345
Регистрация: 28.10.2011
Сообщений: 13,200
Записей в блоге: 7
27.03.2018, 15:14
bedvit, хотите сказать что из VBA или 1С нельзя вызывать WinAPI функции? Вызов функций из процедурной DLL аналогичен WinAPI.
Вот к примеру для VBA MsgBox _ автоматическое нажатие vbYes через 2 минуты ожидания

К тому-же ничего не мешает сделать универсальную DLL, которая будет одновременно COM и процедурной.
0
Модератор
10067 / 3912 / 885
Регистрация: 22.02.2013
Сообщений: 5,863
Записей в блоге: 79
27.03.2018, 15:26
Цитата Сообщение от locm Посмотреть сообщение
1С нельзя вызывать WinAPI функции?
Напрямую нет, только через ActiveX враппер, насколько мне известно. Тоже самое с vbs к примеру. Смысл писать не ActiveX dll если для ее использования нужна сторонняя ActiveX dll?
Цитата Сообщение от locm Посмотреть сообщение
К тому-же ничего не мешает сделать универсальную DLL, которая будет одновременно COM и процедурной.
Нет в этом смысла.
0
 Аватар для bedvit
1210 / 261 / 22
Регистрация: 20.05.2016
Сообщений: 1,147
Записей в блоге: 22
27.03.2018, 15:55  [ТС]
locm,
Цитата Сообщение от locm Посмотреть сообщение
WinAPI функции
- да, объекты и классы - нет. Еще раз прошу обратить внимание, что передается объект, а не функция. Через WinAPI нельзя передать объект. Поэтому придумали COM. Та же контора
0
Модератор
10067 / 3912 / 885
Регистрация: 22.02.2013
Сообщений: 5,863
Записей в блоге: 79
27.03.2018, 15:56
Цитата Сообщение от bedvit Посмотреть сообщение
Через WinAPI нельзя передать объект
Можно
0
Кормпилятор
 Аватар для Quiet Snow
5044 / 1718 / 409
Регистрация: 25.04.2010
Сообщений: 4,827
Записей в блоге: 2
27.03.2018, 15:57
Перечитал эту тему, уже ничего не помню, что мы тут обсуждали. Но.

Версия 0.0.0.1 под x64 (x32 - пока не поддерживаю).
Вот это вот меня обломает на тестинг. У меня 32 битный компиль, на 64 пока не планировал
перескакивать. Не хочу Стасу мозги морочить вопросами про нюансы 64 бит *.dll.
Кстати перенесите в корень, а то, увидев эту тему в списке, уже хотел материться,
потому что то файловый менеджер, то Jpeg, а тут ещё и *.dll* на кубейсике.
Уж грешным делом подумал, что парни совсем очумели.
0
 Аватар для bedvit
1210 / 261 / 22
Регистрация: 20.05.2016
Сообщений: 1,147
Записей в блоге: 22
27.03.2018, 16:03  [ТС]
The trick, как? Мне было бы интересно узнать. Зачем тогда полвинды и весь офис на сом объектах?

Добавлено через 2 минуты
Quiet Snow, популярный раздел!)) (переносит модератор?)
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
27.03.2018, 16:03

Как подключить .dll библиотеку?
Есть готовый код на С++ /*---------------------------------------------------------------------------- * * демонстрация ElByECC.DLL ...

Не могу подключить dll библиотеку
Вообщем есть библиотека Visa32.dll и я не могу ее подключить. Так же есть два заголовочных файла - Visa.h и visatype.h. В про файле...

Как подключить библиотеку 7z.dll?
Как подключить библиотеку 7z.dll. Я скачал архив с сурсами, откопал 7z.dll пытаюьс добавить в проект ошибка "Не удалось добавить сылка...

Как подключить библиотеку i7000.dll?
у меня есть библиотека i7000.dll библиотека необходимая для работы с com портами все остальное работает нормально а эта работает только с 3...

Как подключить библиотеку shell32.dll ?
Решил воспользоваться примером открытия файла с помощью необходимого приложения. В примере используется API, команда. Я сделал всё как...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
40
Ответ Создать тему
Новые блоги и статьи
Архитектура биовида Стива в Майнкрафте: Зачем бонобо кубический каннибализм
anaschu 30.08.2026
Кубический Вагинокапитализм в Minecraft: Математический инвариант ОДУ и рок Стивов-бонобо Главная задача разработанной «Модели Всего» — наглядно продемонстрировать наличие системной «судьбы». . .
Оттачиваю умение писать js программы.
russiannick 30.08.2026
Проектом выходного дня стало написание Книги шифров Виженера. Итогом стала версия 200, синий туман. Синий туман назван так, потому что замораживает текст под собой. Нажатие синих кнопок управляют. . .
мат медиц модель 30. презентация проекта
anaschu 27.08.2026
хоп хоп хоп хидахоп, а я кладую))
Как у меня протекала болезнь
zorxor 27.08.2026
Здравствуйте, друзья! Эта запись блога предназначена именно для вас - для моих дорогих друзей, которые знали меня лично. Чтобы ответить на вопрос - а что же со мной произошло на самом деле? Я учился. . .
Нашел вот забавное видео о измерениях. Лучшее что я видел на эту тему
kumehtar 26.08.2026
ILETXiw9bMQ Основная суть и тезисы по измерениям: 0D (Нулевое измерение): точка, не имеющая длины, ширины, высоты или объема. Объект не может перемещаться в 0D. 1D (Первое измерение):. . .
[EasyBuilder Pro] Памятка по разработке для панелей Weintek
ФедосеевПавел 26.08.2026
Памятка по разработке для панелей Weintek ВВЕДЕНИЕ Ранее, при реализации проектов основное внимание уделял разработке управляющей программы для контроллера, а панели оператора доставалось время. . .
Модель по догадкам
anaschu 25.08.2026
Прошло две недели. Я уже рассказывал, как разговаривал с сотрудниками у сортировки и как понял, что главная ветка — не про приёмку, а про отбор. Но тогда я думал, что понял механику. На этой неделе я. . .
Запись в регистр сведений независимо от заполненности табличной части
Maks 25.08.2026
Реализация из решения ниже выполнена на нетиповом документе с несколькими табличными частями, разработанного в КА2. Задача: Обеспечить запись документа в регистр сведений независимо от. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru