|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
08.12.2009, 09:27 | #21 |
Старожил
Регистрация: 04.02.2009
Сообщений: 17,351
|
Пожалуй так и поступим. Явное указание для чужой функции.
Маньяк-самоучка
Utkin появился в результате деления на нуль. Осторожно! Альтернативная логика |
08.12.2009, 16:07 | #22 | |
Телепат с дипломом
Старожил
Регистрация: 10.06.2007
Сообщений: 4,929
|
Цитата:
The future is not a tablet with a 9" screen no more than the future was a 9" black & white screen in a box. It’s the paradigm that survives. (Kroc Camen)
Проверь себя! Онлайн тестирование | Мой блог |
|
08.12.2009, 16:17 | #23 |
ios developer
Старожил
Регистрация: 16.11.2007
Сообщений: 2,885
|
Хватало, но если тетрадь была большая, перья гусиные стирались - хоть пинцетом держи. Пинцеты тогда были дефицит - пользовались китайскими палочками
Сорри за оффтоп
Делайте что хотите, но чтобы через полчаса в лесу было светло, сухо и медведь!
|
09.12.2009, 09:56 | #24 |
Старожил
Регистрация: 04.02.2009
Сообщений: 17,351
|
По сути продолжение данной темы, поэтому не создаю новую .
Сейчас подумываю над подключением функций из ДЛЛок. Сам процесс задуман следующим образом: программер в команде указывает имя специального текстового файла, ну какой-нибудь командой вроде загрузим функции из библиотеки имя файла (сейчас синтаксис не имеет значения). В данном текстовом файле идет описание функций, числа параметров и имени ДЛЛ. Интерпретатор грузит данные функи и если они встречаются, вызывает их из ДЛЛ. Затем программер дает команду и интрепретатор отстыковывает от себя ДЛЛку. То есть загрузка динамического типа. Естественно, грузить можно будет не все ДЛЛки, а только созданные определенным образом (это пока тоже не имеет значения). Ну теперь собственно вопрос, чем считать такие функции? Я хочу подключать их как встроенные - загрузил и она считается как в Дельфи из модуля System, если имя совпадает с настоящей встроенной, то она будет перегружена.
Маньяк-самоучка
Utkin появился в результате деления на нуль. Осторожно! Альтернативная логика |
09.12.2009, 10:13 | #25 | ||
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
Цитата:
Я бы их считал как функции фнешнего модуля. (Опять таки я на Компонентный Паскаль опираюсь во мнении)... Цитата:
т.е. смысл в том что проггер то должен четко знать какого типа какой параметр, и тогда может писать Users32.dll.MessageBoxA(Handle,PCha r('ntrcn'),PChar('Caption'),Integer (0)); Смысл в том чобы компилятору указывать какая функа из какой ДЛЛ сейчас вызывается, а не описывать их статически. Компилятор, подгружит эту ДЛЛ или если она подгружена уже возьмет ее, и выполнит функцию, запуздырив в стек указанные параметры. Поскольку в параметрах указан тип данных, компилятору должно быть не трудно подумать запуздыривать в стек указатель на структуру или просто некое число. Как тее такая идейка?
I'm learning to live...
|
||
09.12.2009, 10:23 | #26 | ||||
Старожил
Регистрация: 04.02.2009
Сообщений: 17,351
|
Цитата:
Цитата:
Цитата:
Цитата:
--------------------------------------- Добавлено позже -------------------------------------------------- Кажется немного въехал... Хорошо, вот ситуация он вызывает функцию которой нет в ДЛЛ, че тогда? Access Violation? Я всегда побаиваюсь ДЛЛ - это черный ящик и как с ним бороться? Отсюда у меня все эти заморочки и есть. Пока я пишу ДЛЛ все ровно, но я хочу дать возможность писать для интрепретатора функции всем кому вздумается.
Маньяк-самоучка
Utkin появился в результате деления на нуль. Осторожно! Альтернативная логика Последний раз редактировалось Utkin; 09.12.2009 в 10:31. |
||||
09.12.2009, 10:33 | #27 |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
Когда ты подключаешь статически ты в intarface прописываешь
Функа Имя () Экстернал "ДЛЛ.dll" А уж потом их просто вызывать. Так вот смысл интриги в том чтобы компилятору этого не писать. Пусть компилит, но как встретит строчку типа той что я указал, пусть знает что функция эта должна быть подгруженна из DLL, модуль которой называется так как написано перед ней. т.е. компиляору совершенно не обязательно знать какие программа будет библиотеки подгружать. Это я к тому можно прописать в проекте кучу функций из кучи ДЛЛ, но не всегда они могут быть нужны, допустим: Код:
I'm learning to live...
|
09.12.2009, 10:40 | #28 | |
Старожил
Регистрация: 04.02.2009
Сообщений: 17,351
|
Ну я и хотел динамическую загрузку через
Цитата:
Второй пункт, который я пропустил - у меня сменный синтаксис. Для смены наименований функций в ДЛЛ мне понадобиться подкорретировать только текстовый файл.
Маньяк-самоучка
Utkin появился в результате деления на нуль. Осторожно! Альтернативная логика Последний раз редактировалось Utkin; 09.12.2009 в 10:43. |
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Приоритет процесса | P@SH@ | Win Api | 9 | 13.05.2014 21:48 |
Приоритет макроса | ru3000 | Microsoft Office Excel | 4 | 02.09.2009 04:45 |
использование функций в качестве параметров других функций | mono | Помощь студентам | 0 | 20.04.2009 18:25 |
Приоритет | Михаил Юрьевич | Win Api | 5 | 15.07.2008 23:23 |
Приоритет чужого процесса (консультация) | Air | Win Api | 9 | 06.03.2008 20:05 |