![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
О результате трудов - откомпилированных файлах ... [D7, D2005, XP]
User © (2008-07-19 23:07:00)Не секрет, что компилятор Delphi в результирующие файлы впихивает все, что надо и, что самое неприятное, что не надо. Дабы в этом убедиться, достаточно откомпилтровать пустышку в виде формы и используя только Forms. При просмотре в eXeScope можно увидеть и Bitmap из 11 картинок, и Dialog (DLGTEMPLATE), и String (11 записей), RCData (в полном составе, включая TFORM1 в виде dfm), стандартные курсоры, ну и, конечно - иконка.
Так вот, есть ли какие-то:
- установки компилятора (-$O+ присутствует), чтобы не включать лишнего в компилируемый файл,
- внешние программы (не упаковщики РЕ), чтобы исключить ненужности из откомпилированного файла.
Anatoly Podgoretsky (2008-07-23 13:43:00) [1]> Тын-Дын (23.07.2008 13:10:50) [50]
Я не призываю, а обращаю внимание на недостатки твоих тезисов.
Ассемблерб а нафига Паскаль, когда есть TASM
Так вот после выхода TP 6 я полностью отказался от использования TASM, хотя писал именно системные вещи, в первую очередь драйвера.
Так же и здесь, зачем отказываться от Дельфи, что бы писать на WinApi - инструмент удобен и для этой работы тоже. Вот если писать драйвера режима ядра, то выбор Дельфи мягко скажем очень смущает, или спецАПИ, для которого не портированы заголовки.
Тын-Дын (2008-07-23 13:10:00) [2]
> Anatoly Podgoretsky © (23.07.08 12:29) [49]
> > Тын-Дын (23.07.2008 12:17:48) [48]
>
> WinAPI предназначет для решения абсолютно любых задач, хоть
> Hello World, а не только системных.
> Какое средство, программирования с WinAPI, уберет вот это
> - куча времени
WinAPI для любых задач. но почему мы не пишем прикладные задачи для работы с БД на Assembler и WinAPI?
Anatoly Podgoretsky (2008-07-23 12:29:00) [3]> Тын-Дын (23.07.2008 12:17:48) [48]
WinAPI предназначет для решения абсолютно любых задач, хоть Hello World, а не только системных.
Какое средство, программирования с WinAPI, уберет вот это - куча времени
Тын-Дын (2008-07-23 12:17:00) [4]
> User (23.07.08 12:11) [47]
> Перефразирую, WinAPI посредством Delphi ;-)
Ну если есть необходимость в каких-то системных задачах и куча времени, то почему бы нет?
User (2008-07-23 12:11:00) [5]Перефразирую, WinAPI посредством Delphi ;-)
Тын-Дын (2008-07-23 12:08:00) [6]
> User (23.07.08 10:18) [45]
> WinAPI ...
Тогда зачем Delphi?
User (2008-07-23 10:18:00) [7]WinAPI ...
Тын-Дын (2008-07-22 19:48:00) [8]
> User (22.07.08 14:39) [42]
И какие выводы?
Loginov Dmitry (2008-07-22 17:33:00) [9]
> ... включение хоть всех юнитов в uses никак не скажется
> на объемах, ресурсах и тд. откомпилированного файла, если
> они не используются в программе ...
скажется. Во многих юнитах есть секция initialization.
User (2008-07-22 14:39:00) [10]> Игорь Шевченко © (20.07.08 21:03) [21]
докладываю результаты: при компиляции " ... with runtime packages" файлик пустой формы занимает 18 432 байта и из ресурсов только RCData и иконка (накидывание всяких элементов на форму раздувает только TFORM1, включение ресурсов по {$R х.res}добавляет этот ресурс), все необходимое находится в rtl x.bpl и vcl x.bpl ...
... включение хоть всех юнитов в usesникак не скажется на объемах, ресурсах и тд. откомпилированного файла, если они не используются в программе ...
... по поводу проведения свободного времени - кому как нравится (у меня Delphi как увлечение, т.к. моя работа не связана с программированием), хуже если его совсем нет ...
Германн (2008-07-22 14:24:00) [11]
> Borland виноват - напихал, понимаешь, всяких вызовов ненужных
Но ведь - "Чтобы продать что-нибудь ненужное, надо сначала купить что-нибудь ненужное". (с)
Игорь Шевченко (2008-07-22 09:46:00) [12]
> Эээ. А может разработчики NT тоже виноваты? Может они забыли
> принцип совместимости снизу вверх?
Borland виноват - напихал, понимаешь, всяких вызовов ненужных
Германн (2008-07-22 01:05:00) [13]
> Игорь Шевченко © (21.07.08 13:18) [36]
>
> Anatoly Podgoretsky © (21.07.08 12:35) [35]
>
> Э...любая программа, скомпилированная на D6 не работала
> без SP4. Даже begin..end :)
>
>
Эээ. А может разработчики NT тоже виноваты? Может они забыли принцип совместимости снизу вверх?
Игорь Шевченко (2008-07-21 15:13:00) [14]Anatoly Podgoretsky © (21.07.08 15:02) [37]
> Надо было в системных требованиях указать SP6a
А толку-то ? Не было у меня на тот момент даже SP4 не говоря о SP6a...После войны с очередным линуском удалось взгромоздить NT4 SP1 и все :)
Anatoly Podgoretsky (2008-07-21 15:02:00) [15]> Игорь Шевченко (21.07.2008 13:18:36) [36]
> Впрочем, разработчиком и пользователем был я, поэтому взаимные претензии были урегулированы.
Надо было в системных требованиях указать SP6a
Игорь Шевченко (2008-07-21 13:18:00) [16]Anatoly Podgoretsky © (21.07.08 12:35) [35]
Э...любая программа, скомпилированная на D6 не работала без SP4. Даже begin..end :)
Впрочем, разработчиком и пользователем был я, поэтому взаимные претензии были урегулированы.
Anatoly Podgoretsky (2008-07-21 12:35:00) [17]> Игорь Шевченко (21.07.2008 11:57:33) [33]
А мне кажется разработчик лоханулся :-)
Не так ли?
brother (2008-07-21 12:00:00) [18]> Так что исследование внутренностей не всегда является пустой
> тратой времени.
трудовая необходимость )
Игорь Шевченко (2008-07-21 11:57:00) [19]Вот между прочим - несколько лет назад столкнулся с проблемой - программы, скомпилированные на Delphi 6 не хотели работать на NT4 без определенного сервис-пака. Потому что в их недрах были вызовы к oleaut32.dll (если мне память не изменяет), для работы программы даром не нужные, но тем не менее, явно слинкованные.
Пришлось делать патч, перебивать имена в секции импорта на oleaut33.dll и пустую dll-ку с нужными функциями рядом класть.
Так что исследование внутренностей не всегда является пустой тратой времени.
brother (2008-07-21 09:57:00) [20]Вот точно, людям время некуда девать...