Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Как уменьшить размер программы?


Ell ©   (2006-01-24 19:49:00) 

Не совсем понимаю, почему скомпилированная, даже пустая, форма занимает более 300 Кб.
Понятно, что форма тоже имеет определённые свойства... Но всё равно, не слишком ли много для пустой формы?, и разве многие из её свойств не задаются внешними процедурами операционки?
Вот, например, смотрю конкурсные работы на Делфи ( http://code.darthman.com/news.php) - размер exe'шников от 20 с чем-то Кб. Или возьмём стандартные программы Windows, например, sol.exe - 56 Кб.
Насколько я знаю, Делфи лишнего компилировать не должен...


Кефир87   (2006-01-24 23:11:00) [1]


> grouzd[E]v ©   (24.01.06 22:37) [19]

XProger - мелкий извращенец 8) И не будет он в данном случае прав 8) И на сколько я помню, в этой проге на 0,5к нет ничего вапще, даже окошка
http://xproger.mirg.ru/?id=1&doc=delphi_min
Вот демка на 2к это еще ничего. Там хоть есть что-то 8)
А у меня в 56к и моделки и текстуры и даже отдаленно напоминает игру 8)


grouzd[E]v   (2006-01-24 22:37:00) [2]


> [18] Кефир87 ©   (24.01.06 22:00)

Ага, 56к, щас придет XProger и покажет всем свое знаменитое окошко на 0,5к. И будет правЪ. Размер имеет значение =)
А по сабжу - нафиг избавиться от vcl. Только если не софт и не нужны визуальные компоненты

---
... we are walking on a thin line and you better avoid the risk ...


Кефир87   (2006-01-24 22:00:00) [3]

Ell, а ты бы посмотрел наши конкурсные исходники 8) Ты удивишься, но там форм вапще нет 8)
А я свои гоночки еще и UPX жал. Получилось около 56к. На самом деле это просто условие конкурса такое было. Для написания игр нужно лишь окно. А вот если в программе много оконо с множеством всяких контроллов, то не стоит от VCL отказываться. ИМХО.


Eraser   (2006-01-24 21:58:00) [4]


> Ell ©   (24.01.06 21:45) [13]

dotNet.
ну или чистый WinAPI.
Можно конечно всякие KOL, как тут уже советовали, но главный вопрос - стОит ли?


Ell   (2006-01-24 21:56:00) [5]

Спасибо за ответы, поразбираюсь...


Zeqfreed   (2006-01-24 21:48:00) [6]

Ell ©   (24.01.06 21:31) [10]

> Как сделать просто пустую формус минимальным весом
> скомпилированного кода?

File —> New —> Application; Project —> Build Project1
Хотя, наверное, можно все-таки чего-нибудь урезать из приложения оставив работоспособность.


sniknik   (2006-01-24 21:46:00) [7]

> Ну, скажем так. Как сделать просто пустую форму с минимальным весом скомпилированного кода?
например
http://www.delphimaster.ru/cgi-bin/forum.pl?id=1137866881&n=18
(кб. 15-20 и будет, возможно с заменами из KOL можно "догнать" до 6-10кб)


Ell   (2006-01-24 21:45:00) [8]

Eraser:
запакуй программу упаковщиком, типа DSPack
Это всё понятно... Только мне интересно, как же делают маленькие исполняемые коды...


DrPass   (2006-01-24 21:44:00) [9]


> Как сделать просто пустую форму с минимальным весом скомпилированного
> кода?

Читай про CreateWindow, RegisterClass и т.д.
В Delphi 6 простенькое приложение получалось 8-10К :-)


Eraser   (2006-01-24 21:35:00) [10]


> Ell   (24.01.06 19:49)

запакуй программу упаковщиком, типа DSPack, если размер exe так критичен, хотя любой инсталлятор упаковывает файлы, так что на размер дистрибутива это не повлеяет.


Ell   (2006-01-24 21:31:00) [11]

sniknik © (24.01.06 20:10) [2]:
...а время для их написания в столько же раз увеличится...

Ну, сложность не особенно пугает, ведь часто программирование может быть удовольствием :-)...  да, сейчас я программирую лишь время от времени (как любитель) и поэтому многих нюансов не знаю, но программировать на низком уровне тоже нравилось - в своё время и на Спектруме на ассемблере писал программы и на Turbo Pascal - процедуры на ассемблере старался делать, и это даже нравилось...

Ну, скажем так. Как сделать просто пустую форму с минимальным весом скомпилированного кода?


Desdechado   (2006-01-24 21:07:00) [12]

а еще можешь использовать run-time пакеты, программы тоже маленькие, вот только с ними таскать эти самые пакеты надо


Ell   (2006-01-24 21:01:00) [13]

vrem   (24.01.06 20:51) [4]:
> Ell, какая разница какой размер? :)

Во-первых, 365 Кб и 26 Кб - разница немалая. Потом, уважаемый vrem, вы уходите от темы...


sniknik   (2006-01-24 21:00:00) [14]

Zeqfreed ©   (24.01.06 20:56) [5]
а во сколько тогда увеличится время написания?! уууууууууу.......(y)!!! ;о)


sniknik   (2006-01-24 20:56:00) [15]

> sniknik, ссылки очень неопределённые.
конкретнее? - пиши на WinAPI и/или KOL.


Zeqfreed   (2006-01-24 20:56:00) [16]

http://flatassembler.net/
Используй это и размеры твоих программ приблизятся к нулю ;)

P.S. Если и не все, то большинство работ на конкурсе написаны без использования VCL на чистом WinAPI (+ графические API).


vrem   (2006-01-24 20:51:00) [17]

Ell, какая разница какой размер? :)


Ell   (2006-01-24 20:41:00) [18]


> sniknik ©   (24.01.06 20:10) [2]
> http://www.delphimaster.ru/cgi-bin/forum.pl?n=10
> http://www.delphimaster.ru/cgi-bin/forum.pl?n=5
> используй это и размеры твоих екзешников приблизятся к вожделенным
> 20кб


sniknik, ссылки очень неопределённые.


cyborg   (2006-01-24 20:10:00) [19]

Он и не компилирует лишнее.
Смотри в добавляемых модулях в проекте части initialization.


sniknik   (2006-01-24 20:10:00) [20]

http://www.delphimaster.ru/cgi-bin/forum.pl?n=10
http://www.delphimaster.ru/cgi-bin/forum.pl?n=5
используй это и размеры твоих екзешников приблизятся к вожделенным 20кб, а время для их написания в столько же раз увеличится, ошибок тоже меньше не станет...


Наверх

Титульная страница Поиск, карта сайта Написать письмо