![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
|
Опции темы | Поиск в этой теме |
![]() |
#11 | ||
Старожил
Регистрация: 09.01.2008
Сообщений: 26,229
|
![]() Цитата:
DCU файлы - это, фактически, OBJ файлы в других средах программирования. Там находится определённым образов сгенерированный ОБЪЕКТНЫЙ код. Это код может быть использовать при компиляции/генерации исполняемого кода (т.е. когда Вы строите (build) Ваш проект нужные кусочки кода из DCU попадают в EXE). Использовать DCU файлы в runtime (т.е. во время работы полученного EXEшника невозможно. (по крайней мере, нормально использовать). Поэтому на Ваш вопрос Цитата:
Если неизвестно имя библиотеки на момент написания программного кода, то нельзя определить, какие функции в этой библиотеке имеются. (ну сами подумайте, каким образом может быть известно, какие функции в этой библиотеке имеются, если неизвестно, о какой библиотеке идёт речь?!! p.s. А вообще тема пустая и бессмысленная. Автору хочется "странного"... И при этом непонятно зачем... |
||
![]() |
![]() |
![]() |
#12 | |||
Старожил
Регистрация: 28.01.2009
Сообщений: 21,000
|
![]() Цитата:
Цитата:
Цитата:
2ТС: ищите спецификацию на формат файла и вперед работать с ним. Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел. Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите. |
|||
![]() |
![]() |
![]() |
#13 | ||
Старожил
Регистрация: 09.01.2008
Сообщений: 26,229
|
![]() Цитата:
И для чего это автору знать?! (именно на этапе runtime!) Цитата:
и, если не ошибаюсь, офицальной спецификации на формат DCU нет и никогда не было. |
||
![]() |
![]() |
![]() |
#14 | |||
Старожил
Регистрация: 28.01.2009
Сообщений: 21,000
|
![]() Цитата:
![]() Цитата:
Цитата:
хотя думаю для dcu 1982 года где-то уж точно оно есть. Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел. Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите. |
|||
![]() |
![]() |
![]() |
#15 |
Старожил
Регистрация: 03.01.2011
Сообщений: 2,508
|
![]()
> для dcu 1982 года
Дельфи образца 1982 года? ) В дос паскале всегда TPU были, вот тут есть пару программ (вроде даже с исходниками). Вобще, довольно популярная тема лет 20 назад, сам этим страдал. Кому и зачем это сейчас нужно, хз.
"Когда приходит положенное время, человек перестаёт играть в пинбол. Только и всего."
|
![]() |
![]() |
![]() |
#16 |
я получил эту роль
Старожил
Регистрация: 25.05.2007
Сообщений: 3,694
|
![]()
При компиляции модуля свёртываются константы, вырезаются имена локальных переменных, переменных из секции implementation, некоторые поля классов, типы заменяются на базовые и ещё туева хуча оптимизаций, так что получить хидер модуля, полностью совпадающий с оригиналом, не выйдет.
Сдампить заголовки можно при помощи DCU2INT dcu32int.exe -i <модуль.dcu> Если модуль был скомпилен в другой версии Delphi, при попытке собрать проект, скорее всего, будет ошибка "Unit <модуль1> was compiled with a different version of unit <модуль2>"
пыщь
|
![]() |
![]() |
![]() |
#17 | |
Старожил
Регистрация: 30.12.2009
Сообщений: 11,434
|
![]()
к съедению:
Цитата:
|
|
![]() |
![]() |
![]() |
#18 |
Пользователь
Регистрация: 06.03.2010
Сообщений: 56
|
![]()
объясню задачу :
делаю программу редактор и переводчик из одного языка программирования в другой(в паскаль) , и нужно делать проверку на подключенные модули (узнать если у них данная процедура) . Пользователь может подключить не стандартный (не встроенный) модуль , а программа должна работать корректно и не говорить что в нем ничего нет))
Сделал ошибку.Исправил.Подзаработал
![]() |
![]() |
![]() |
![]() |
#19 |
Старожил
Регистрация: 03.01.2011
Сообщений: 2,508
|
![]()
> нужно делать проверку на подключенные модули
ну так пусть компилятор это и делает. Если даже выковырять список процедур из TPU/DCU, проверить совпадение типов параметров у них будет нетривиальной задачей.
"Когда приходит положенное время, человек перестаёт играть в пинбол. Только и всего."
|
![]() |
![]() |
![]() |
#20 |
Старожил
Регистрация: 30.12.2009
Сообщений: 11,434
|
![]()
ТС, ваша проблема в том, что формат DCU нигде не документирован.
|
![]() |
![]() |
![]() |
|
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Файлы ( Pascal ) | Дабл | Помощь студентам | 6 | 24.12.2009 00:30 |
Не видны файлы *.dcu в директории указанной в Project->Options->Directories/Conditionals->Search Path | Иванчо | Общие вопросы Delphi | 2 | 20.09.2007 10:57 |