|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
12.09.2009, 22:23 | #1 |
Участник клуба
Регистрация: 06.03.2009
Сообщений: 1,346
|
Вопрос про классы в DLL.
Вот начал пробовать создовать DLL. С процедурой все получилось, но моя цель запихнуть в DLL класс, а в программе использующей DLL использовать потомок этого класса . Это возможно? Если да то как это сделать? Если нет то как быть?
|
12.09.2009, 23:40 | #2 |
Участник клубаДжуниор
Регистрация: 23.08.2008
Сообщений: 1,616
|
pushl $0x18E3DF6B
call ICQ |
13.09.2009, 13:09 | #3 |
Участник клуба
Регистрация: 06.03.2009
Сообщений: 1,346
|
Допустим я занес тип в DLL, и как мне его теперь в программе использовать? Процедуры экспортируются, а с типом не знаю что делать. Создал в программе аналогичнй тип, но проблема с переменными этого типа: они не изменяются процедурами DLL. И вообще посоветуйте литературу про DLL или уроки, сам не нашел.
|
13.09.2009, 23:55 | #4 |
Старожил
Регистрация: 20.04.2008
Сообщений: 5,526
|
если хотите пользоваться классами в основной программе и DLL то вам надо пользоваться BPL (это аналог DLL позволяющий передвать разные объекты(классы)
программа — запись алгоритма на языке понятном транслятору
|
14.09.2009, 10:59 | #5 | |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
Цитата:
I'm learning to live...
|
|
14.09.2009, 15:06 | #6 | |
Участник клуба
Регистрация: 06.03.2009
Сообщений: 1,346
|
Решил делать с типами а не классами по техническим причинам.
Вот щас ошибки вообще бредовые получаются: Ради теста сделал такую процедуру в простом модуле программы: Цитата:
Но если эту же функцию сделать в DLL то появляется "Pointer error" при попытке запуска функции. Может я что-то не так делаю? Я могу скинуть исходник если кто-то согласится посмотреть. Или скиньте пример какой, может у кого найдется. |
|
14.09.2009, 15:22 | #7 |
Старожил
Регистрация: 28.01.2009
Сообщений: 21,000
|
а прочесть комент в болванке DLL никак?
string не используем. Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел. Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите. |
14.09.2009, 15:34 | #8 |
Участник клуба
Регистрация: 06.03.2009
Сообщений: 1,346
|
1) Чем заменять string?
2)Стринга вообще не должно быть? Но ведь например LowerCase работает только со стрингом? 2) Как запихнуть в DLL тип и потом его использовать? Его нужно как-то экспортировать, производить какие-то манипуляции? 3)Когда делаешь программу использующую DLL тип, то тип в DLL нужно дублировать в программе (ведь программа не знает какие типы используются в DLL)? 4) Вот в рабочем примере DLL есть такая процедура с использованием string, и все работает: Код:
В инете ответов не нашел. Все статьи про создание элементарной Dll с одной простой показательной процедурой. Ничего про типы, правила использования Dll и прочее. Последний раз редактировалось Вадим Буренков; 14.09.2009 в 15:39. |
14.09.2009, 16:28 | #9 |
Участник клуба
Регистрация: 12.10.2007
Сообщений: 1,204
|
|
14.09.2009, 16:40 | #10 |
Участник клуба
Регистрация: 06.03.2009
Сообщений: 1,346
|
Про string понял, теперь использую shortstring.
А что насчет типов? |
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Новичку про классы | Geniok | Общие вопросы C/C++ | 0 | 24.07.2009 16:18 |
Вопрос про DLL | R@# | Общие вопросы Delphi | 11 | 21.06.2009 12:26 |
Вопрос наверное про функции, а так точно даже не знаю про что. (Вопрос начинющего #6) | Albert2008 | Общие вопросы Delphi | 4 | 21.08.2008 15:33 |
У меня вопрос про базы данных,а точнее про таблицы!!! | Alexij | Общие вопросы Delphi | 1 | 13.04.2008 23:24 |
Вопрос про DLL-файлы | PChEL@ | Общие вопросы Delphi | 3 | 29.06.2007 02:03 |