Создание DLL23.07.2013, 16:20. Показов 14076. Ответов 103
Метки нет (Все метки)
Код программы (пример использования DLL):
Вот таким образом я всё сделал по инструкции из статей по работе с DLL, но не могу скомпилировать exe: пишет, что нужно скомпилировать сначала второй проект с DLL. Его компиляция (Make Summ.dll), а также (одновременная компиляция всей группы проектов) Make Project Group не дают результата - якобы он не скомпилирован, хотя это не так. Плюс при компиляции DLL выдает сообщение, что нельзя получить доступ к системному регистру (System Registry). В чём может быть дело?
0
|
|||||||||||
| 23.07.2013, 16:20 | |
|
Ответы с готовыми решениями:
103
Создание dll на основе Visual Basic Создание DLL в VB, в которой хранятся формы. |
|
Супер-модератор
|
|
| 25.07.2013, 14:36 | |
|
В PowerBasic я оптимизацию не трогал. Просто взял - и скомпилировал. Не настаиваю, что PowerBasic порождает самый лаконичный код. А Ваш пример на каком Бэйсике?
Добавлено через 7 минут А, увидел... Но тогда почему кто-то писал, что у PureBasic есть проблема в этом вопросе?
0
|
|
|
|
||
| 25.07.2013, 15:19 | ||
|
0
|
||
| 27.07.2013, 16:41 [ТС] | |||||||
Вот пример кода DLL - сложение двух чисел. Он больше, чем на PowerBasic по объёму. Но здесь мною написано лишь 5 строк - 9-13. Остальное компилятор сам вставляет. А вот насчёт оптимизации - как её здесь делать, не знаю. Эта DLL весит 86 КБ.
0
|
|||||||
|
Модератор
|
|||||||
| 27.07.2013, 17:24 | |||||||
Сообщение было отмечено The trick как решение
РешениеКликните здесь для просмотра всего текста
656 байт.
1
|
|||||||
|
|
|||||||
| 27.07.2013, 18:20 | |||||||
![]() На ЯВУ сможете добиться того же размера без танцев в бубном? ![]() У мня получилось из этого кода:
1
|
|||||||
|
|
|||
| 27.07.2013, 19:04 | |||
|
Разница между процедурой и функцией лишь в том, что первая не возвращает результат. Если в процедуре нет оператора ProcedureReturn, то она работает как процедура, а если есть, то как функция.
0
|
|||
| 27.07.2013, 19:34 [ТС] | |
|
По Delphi специально поискал, как можно оптимизировать DLL на нём. Ведь, как я писал раньше, без оптимизации его объем 85 КБ.
В итоге у меня получилось минимум 14 КБ. Меньше никак. Так что в плане экономии памяти DLL на PowerBasic лучше чем на Delphi. Добавлено через 8 минут Ещё есть вопрос по DLL. У нас во всех примерах на VB здесь статическая загрузка DLL, т.е. при ней DLL выгружается из памяти при окончании работы программы. Это не экономно, т.е. если мы один раз использовали функцию из DLL и больше она нам не нужна, то она всё равно находится в памяти, готовая к использованию. Есть ещё динамическая загрузка, когда её можно выгрузить из памяти в любой момент, если она больше не используется. Интересует, как это сделать.
0
|
|
|
|
||
| 27.07.2013, 20:22 | ||
|
У меня загружает (см. скрин). У вас случайно на x64 система? Можете мне скинуть скомпилированную VB-прогу, которая загружает dll из корня диска C: (т. е. "C:\Test.dll")? Тогда узнаем в чем дело, в VB или в компе.
0
|
||
|
|
|
| 27.07.2013, 20:36 | |
|
То есть не загружается только при запуске в IDE?
А если запустить в IDE с отключенным отладчиком? Может в нем проблема?
0
|
|
| 27.07.2013, 20:36 | |
|
Создание процедурных DLL в Visual Basic (статья) Visual Basic + VC++ DLL = ошибка Bad DLL calling convertation Ошибка Can't find DLL entry point CryptEnumProvidersA in advapi32.dll ntdll.dll и kernel32.dll - Реальные примеры работы на vb6 За какую функцию отвечают user32.dll,kernel32,winmm.dll Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Теория всего 12. ВГК
anaschu 21.07.2026
### Главные семантические изменения и дешифровка новой физики
1. **`REPRODUCTIVE_EMISSION` вместо фотосинтеза (`PS_base`)**: Энергия и ресурсы, которые класс средних мужчин (`_W_MEN_DONORS`). . .
|
Публикация отклонённая на хабре. Как «пернатого» заставить осваивать новые горизонты опыта через масштабирование задачи и целеполагание
Hrethgir 21.07.2026
https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11948&stc=1&d=1784657928
Привет Хабр. В этой статье я расскажу, как один закон эпистемологии позволил мне с ходу запустить уникальный. . .
|
Теория всего 11. Основные параметры
anaschu 21.07.2026
Дешифровка тензорного ядра Soil Chemistry 2. 0: Истинный инвариант Теории Всего
Чистовой исходный код многокомпонентной сукцессии зафиксирован. Модель оперирует единым вектором состояния. . .
|
Теория всего 10. Клод трусишка
anaschu 21.07.2026
Алгоритмический суицид ИИ: Когда математика ОДУ взламывает цензурные шлюзы
Свежайший мета-прецедент нашей разработки! Клод официально отказался строить итоговую кроссплатформенную модель, как. . .
|
|
Теория всего 9. Окончательная проработка метафоры "дерево = традиции"
anaschu 21.07.2026
Скрытые параметры ядра ОДУ: Механика Глубинного Рока
Клод утаил от вас ключевую математику кризисов. В движке игры зашиты пять скрытых коэффициентов, определяющих, как именно ТНК и Мемы ломают. . .
|
Теория всего 8. Clauude трусишка. Ответ джемени
anaschu 21.07.2026
Игровой баланс «Модели Всего»: Алгоритмический блок как механика Семантического БуфераЭтот скриншот отказа Клода — идеальный, чистейший прецедент для нашей Теории Всего. Вы столкнулись не просто с. . .
|
Теория всего 7. Дерево - это патриархат, грибы - это феминизм
anaschu 21.07.2026
Уничтожение Патриархата: Как ТНК, Мемы и Половой отбор зачистили «Сексуальный Пролетариат»
Величайшая иллюзия современного человека — вера в «свободу воли», «социальный прогресс» и «эволюцию. . .
|
История и социология Терры на примере борьбы микориз за пространство. 1. Глоссарий терры.
anaschu 21.07.2026
Решил тут подумать о возможности сделать лор некоторой комп игры - стратегии, или худжественной книги антиутопии, которые будут юзать планету,которая максимально будет похожа на нашу землю, но где. . .
|