PureBasic - форум

Информация о пользователе

Привет, Гость! Войдите или зарегистрируйтесь.


Вы здесь » PureBasic - форум » Вопросы по PureBasic » Использование DLL


Использование DLL

Сообщений 1 страница 13 из 13

1

К примеру запущены две программы, которым надо обращаться к одной DLL. Первая запускает dll . Но не закрывает ее. Надо ли второй программе открывать ее с помощью OpenLibrary?  И если надо открывать, то как быть с командой CloseLibrary в том случае если одна программа завершается, а вторая еще нет?

0

2

haav написал(а):

Надо ли второй программе открывать ее с помощью OpenLibrary?  И если надо открывать, то как быть с командой CloseLibrary в том случае если одна программа завершается, а вторая еще нет?

Надо!
Дело в том, что эти команды загружают и выгружают DLL'ку не сами, а посредством операционной системы.
А уже операционная система следит за тем, когда нужно загрузить и выгрузить DLL'ку.
А без OpenLibrary вообще невозможно работать с DLL'кой (API функции не всчёт), даже если она была ранее загружена в память, ведь нам не известен её идентификатор.

0

3

Спасибо за ответ

0

4

Скажите можно ли засунуть в dll большое количество картинок (50-100) и при необходимости доставать оттуда необходимые?

0

5

daiomik написал(а):

Скажите можно ли засунуть в dll большое количество картинок (50-100) и при необходимости доставать оттуда необходимые?

Конечно можно. Многие разработчики именно так и делают.

0

6

haav написал(а):

Конечно можно.

так и думал. Еще: допустим у меня есть ОЧЕНЬ много текстовой информации, которую мне необходимо использовать в своей программе. В данном случае правильней будет не запихивать же весь текст в exe в связанный список? Наверно тоже dll создать нужно?

0

7

daiomik написал(а):

так и думал. Еще: допустим у меня есть ОЧЕНЬ много текстовой информации, которую мне необходимо использовать в своей программе. В данном случае правильней будет не запихивать же весь текст в exe в связанный список? Наверно тоже dll создать нужно?

Лучше использовать для этого текстовый файл, а из него уже подгружать в связанный список.

0

8

haav написал(а):

для этого текстовый файл

ну текстовых файлов будет много. Да и к тому же мне нужно желательно закрыть весь текст от посторонних глаз. То есть для текста dll  нельзя  использовать?

0

9

daiomik написал(а):

ну текстовых файлов будет много. Да и к тому же мне нужно желательно закрыть весь текст от посторонних глаз. То есть для текста dll  нельзя  использовать?

Можно, но зачем? Зашифруй свою инфу и запиши как я и сказал в текстовый файл. Да и никто не мешает тебе все это в exe хранить. Что там том "Война и мир" ожидается?

0

10

haav написал(а):

Война и мир

Нет, просто большое проект по моей отрасли - медицине. Одних заболеваний только около 50 тыс. Ну значит в txt хранить буду. Проблема в том, что вдруг пользователь случайно сотрет хоть один файлик. Вся цепь нарушится.

0

11

daiomik написал(а):

Проблема в том, что вдруг пользователь случайно сотрет хоть один файлик. Вся цепь нарушится.

Значит это его проблема, пусть идет на твой сайт и скачивает заново.

0

12

Электронный учебник задумал?

В исполняемых файлах и DLLках, можно хранить любые файлы, будь то, картинки, музыка, фильмы, или простой текст.
Для этого можно испоьзовать кодовую секцию (операторы DataSection, IncludeBinary, EndDataSection) или ресурсы исполняемых файлов, либо DLLок.

daiomik написал(а):

Да и к тому же мне нужно желательно закрыть весь текст от посторонних глаз.

Как вариант, можно написать небольшую программу, которая будет упаковывать файлы (функции из Packer или библиотека PureZIP), тем самым, не только удастся скрыть текст, но и существено уменьшить требуемое количество дискового пространства - файлов то много!
Эти упакованые файлы помещаем в EXE или DLL, и распаковываем по мере необходимости в память без извечения на диск.

0

13

Пётр написал(а):

Электронный учебник задумал?

Ну ни совсем. В универе за проект медицинский взялись и своего рода необычную программу создаем.

Пётр написал(а):

Как вариант, можно написать небольшую программу, которая будет упаковывать файлы (функции из Packer или библиотека PureZIP), тем самым, не только удастся скрыть текст, но и существено уменьшить требуемое количество дискового пространства - файлов то много!

Это конечно хорошо, но работа не для новечка (меня). Скорей всего обойдусь простыми dll-ами для текста.

0


Вы здесь » PureBasic - форум » Вопросы по PureBasic » Использование DLL