|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
30.09.2008, 07:10 | #1 |
Пользователь
Регистрация: 11.08.2008
Сообщений: 21
|
Пытаюсь создать Dll для своей проги
1) Я может не понимаю смысл как вообще использовать Dll-библиотеки?
Вот как я понял - Можно создать файл(Dll), который будет вызывать мою программу из других приложений и т.п. 2) Я создавал библиотеку с вызовом Формы, и указывал в нем создание одной формы, которая равна моей из проги, тоесть писал function ShowForm : Integer; stdcall; var Form : TDLLForm; begin Form := TDLLForm.Create(Application); Result := Form.ShowModal; Form.Free; end; Но у меня в программе есть еще одна форма её тоже надо описать. 3) Если я написал набор слов вместо вопроса извините.(Сколько не пытался написать понятней выходило ещё хуже). :-) |
30.09.2008, 08:06 | #2 | |
Форумчанин
Регистрация: 28.09.2008
Сообщений: 344
|
Цитата:
Загружать библиотеку и вызывать функции которые ты экспортируешь Особенностей много Например твое (в DLL) Application не будет соответствовать основному если не предусмотришь передачу не забывай про Exception твой код лучше так Код:
Код:
|
|
30.09.2008, 08:33 | #3 |
Пользователь
Регистрация: 11.08.2008
Сообщений: 21
|
У меня вот библиотека создается(компилится), а вот когда вызываю ошибка могу написать дословно, но вроде смысл, что "Я не могу обратиться к ячейке памяти по такомоту адресу".
---А вызываю я её тупо вот так--- var Form1: TForm1; implementation function ShowForm: integer; external 'C:\Documents and Settings\asutpst\Рабочий стол\Новая папка\Login.dll'; {$R *.dfm} procedure TForm1.Button1Click(Sender: TObject); begin Showform; end; Б.Ю. Сома программа работает нормально. |
30.09.2008, 09:30 | #4 |
Android Developer
Старожил Подтвердите свой е-майл
Регистрация: 19.02.2007
Сообщений: 3,708
|
1. function ShowForm : Integer; stdcall;
2. function ShowForm: integer; ?????? external 'C:\Documents and Settings\asutpst\Рабочий стол\Новая папка\Login.dll'; |
30.09.2008, 11:08 | #5 |
Пользователь
Регистрация: 11.08.2008
Сообщений: 21
|
Вы знаете, то что я написал Stdcall; ничего не изменило, может ошибка не в этом.
Я вот спрашивал не может это быть от того, что у меня две формы, а не одна. Просто недавно начал изучать библиотеки и чего-то как делал простой вызов Dll с созданием имеющийся формы, было нормально, а как начал пробовать с прогой по-сложнее так ошибки. Последний раз редактировалось Parcenson; 30.09.2008 в 11:11. |
30.09.2008, 17:25 | #6 |
Android Developer
Старожил Подтвердите свой е-майл
Регистрация: 19.02.2007
Сообщений: 3,708
|
Меня еще вот эта строка интригует: "Form := TDLLForm.Create(Application);" если это в коде длл конечн. И вообщет нельзя ли код длл где и как описана и вызывается форма. И код проги опять теже где и как
|
30.09.2008, 20:36 | #7 |
*
Старожил
Регистрация: 22.11.2006
Сообщений: 9,201
|
Вован, не стоит тратить время... Это - клиника. Пока он не прочитает книгу, например, Фленова для начинающих, мы так и будем чуметь от его перлов...
Админы, закройте тему, ради бога... Работа с DLL у нас объяснялась не раз, в том числе и вашим покорным слугой. Сколько можно жевать одну и ту же жвачку? Пусть люди учатся пользоваться поиском по форуму... Последний раз редактировалось mihali4; 30.09.2008 в 20:38. |
Опции темы | Поиск в этой теме |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Вынос компонентов программы (которые делфи всталяет в каждую программу) из проги в dll | GanGSISoft | Общие вопросы Delphi | 17 | 02.07.2009 17:24 |
Нужно создать dll для защиты | o_nix | Фриланс | 3 | 31.10.2008 15:06 |
Как сделать для своей проги скин? C++ Builder 6. | Dunhil | Помощь студентам | 1 | 30.12.2007 13:37 |
Как со своей проги запустить чужую | SeRhy | Помощь студентам | 5 | 04.11.2007 11:18 |
Защита окна своей проги | joker | Win Api | 8 | 27.09.2007 10:27 |