Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2006.04.16;
Скачать: [xml.tar.bz2];

Вниз

Объем .exe файла   Найти похожие ветки 

 
SergeyG ©   (2006-03-31 10:48) [0]

Сделал простенькую программу: одна кнопка и переписываю данные из одного файла в другой. Объем exe-шника получился под 400 КБ. Как бы его уменьшить объем?


 
Сергей М. ©   (2006-03-31 10:54) [1]

Установить в св-вах проекта опцию Build With Run-Time Packages


 
vovnuke ©   (2006-03-31 11:00) [2]

писать без VCL


 
SergeyG ©   (2006-03-31 11:06) [3]

О! Есть еще на свете чудеса!
Спасибо.


 
SergeyG ©   (2006-03-31 13:18) [4]

О, блин, нет чудес!
ЕХЕ-шник, усеченный опцией Build With Run-Time Packages, на другом компьютере, где нет Делфи и, наверное, отсутствуют какие-то ДЛЛ-ки - такое вытворяет...


 
Сергей М. ©   (2006-03-31 13:24) [5]


> SergeyG ©   (31.03.06 13:18) [4]


Каков вопрос - таков и ответ.

Ты спросил про "Объем exe-шника" и получил стопроцентно работоспособную рекомендацию.

А про библиотеки, без которых в этом случае "отощавший exe-шник" работать не будет, ты не спрашивал)


 
SpellCaster   (2006-03-31 13:30) [6]

Пиши на KOL (форум про это см. вверху страницы). Размер получается около 20 кило.
Если это не выход, сожми экзешник пакером типа UPX, ASPack


 
Kolan ©   (2006-03-31 14:31) [7]

А размер прям котостарафический.. На винт в 120GB не влезет... :)
Delphi нацелен на быструю, даже сверх быструю разработку, поэтому местом на диске пренебрегают так сказать...


 
tipman ©   (2006-03-31 16:35) [8]

убери форму(и ессно выкинь из USES все модули vcl), а запускай например с помощью параметров командной строки т.е. там имена файлов указывай,
праильна сказали - vcl надо убирать!!!


 
_RusLAN ©   (2006-03-31 17:05) [9]

tipman ©   (31.03.06 16:35) [8]
а запускай например с помощью параметров командной строки т.е. там имена файлов указывай,


тогда уже сразу copy file1 file2 :))


 
tipman ©   (2006-03-31 23:59) [10]


> тогда уже сразу copy file1 file2 :))


ну не всегда просто скопировать надо, мож обработочку какую впихнуть, переконвертить чё... а вообще, если не нравится exe"шник с таким размером - переходи на VC++, там всё чётко и ничего лишнего...


 
Palladin ©   (2006-04-01 01:02) [11]

где где четко? :)
где где ничего лишнего? :)

шутник...


 
Германн ©   (2006-04-01 02:31) [12]

А стоит ли вообще заботиться о размере файла исполняемой программы, которая всего лишь 400 КБ?
См. например [7].


 
except ©   (2006-04-01 03:20) [13]

ВСЕГО ЛИШЬ 400кь для ОДНОЙ формы с ОДНОЙ кнопкой? нет уж извините...


 
Германн ©   (2006-04-01 03:36) [14]


> except ©   (01.04.06 03:20) [13]
>
> ВСЕГО ЛИШЬ 400кь для ОДНОЙ формы с ОДНОЙ кнопкой? нет уж
> извините...


Извиню, если представишь подробно претензии с указанием причин!


 
except ©   (2006-04-01 03:49) [15]


> Извиню, если представишь подробно претензии с указанием
> причин!


400кб для формы с одной кнопкой, одной ф-цией это как-то, блин, многовато. На крайний случай (если программа не очень сложная) можно переписать её в c++builder"e, практически без знания c++(может не у всех получается, я за себя говорю). 400кб->от силы 40-50кб. Разница есть.

PS Если нету c++builder можно использовать KOLиMCK


 
DevilDevil ©   (2006-04-01 03:56) [16]

Абсолютно согласен с:

SpellCaster   (31.03.06 13:30) [6]
Пиши на KOL (форум про это см. вверху страницы). Размер получается около 20 кило.
Если это не выход, сожми экзешник пакером типа UPX, ASPack


Размер программ на Delphi увеличивается исключительно из-за того, что в exe добавляется лишний код (модули). Проверь. Создай консольное приложение и откомпилируй. Оно должно занимать около 40кб. Теперь убери модуль SysUtils, откомпилируй. Сколько? около 8кб! Теперь добавь модули SysUtils, Dialogs и Graphics. В тексте программы напиши, например:
...
begin
ShowMessage(IntToStr(clRed));
end.

Откомпилируй. Убедился?

Поверь, для того чтобы запрограммировать окно с кнопкой, достаточно модулей windows и messages. Однако в этом случае, тебе придётся программировать исключительно встроенными функциями Windows, а это, поверь, ОЧЕНЬ СЛОЖНО.

Слава Богу, родился Владимир Кладов! Этот человек написал огромную и очень функциональную библиотеку "KOL", позволяющая достаточно просто разрабатывать компактные приложения. Несмотря на всю огромность этого модуля, в программу компилируются только используемые тобой функции! Вот так она устроена. Отдельное место на сайте Мастеров уделено этой библиотеке. Зайди и скачай KOL&MCK, установи.

Да, чуть не забыл. MCK - набор компонент, позволяющих делать всё это визуально. Однако, работа с ними не совсем стандартна, сначала попрактикуйся с KOL.

Скачай книгу по KOL: http://bonanzas.rinet.ru/KOLBook.rar

Но самый простой способ: зажать программу специальным пакером. Я пользуюсь ASPack, найди в Интернете. Он зажимает в среднем в 2 раза. Кстати, KOL и WinAPI программы тоже зажимаются


 
TUser ©   (2006-04-01 08:04) [17]

Пиши консольную программу.


 
Virgo_Style ©   (2006-04-01 09:54) [18]

except ©   (01.04.06 3:49) [15]
можно переписать её в c++builder"e


см. [4] :-P


 
Delphi5.01 ©   (2006-04-01 11:05) [19]

SergeyG
Если уж так хочеться, тогда иди в раздел KOL на нем проги вообше минимальные получаються как на С++ но учти, такое выдержать не каждый может, если давно занимаещься программированием и для прикола хочеш и эту гору осилить то тебе прямо туда, если просто хочеш уменьшить размер то лудше бери архиваторы exe, помню раньше был такой Aspac кажеться назывался.
Что касаеться KOL, мой личный совет, если хочеш понять как ООП работает то идеш и пишиш свой маленький компонент под KOL если одолееш, считай что твои знания в два раза увеличились :-)
Удачи


 
Kolan ©   (2006-04-01 19:31) [20]

Труд проектировщика, аналитика, программиста ... Стоит в сотни раз дороже какихто лишних 300kB... (это для тех кто считает что это много :)


 
Рамиль ©   (2006-04-01 20:18) [21]

Не понимаю я все это. Подумаешь, 400 кб... И что? А попрубуй до 20 Мб размер довести. 400 кб на среднем диалапе чуть больше минуты скачиваетс. Зачем нужен KOL? Зачем нужно писать без VCL?


 
except ©   (2006-04-01 23:59) [22]


> Рамиль ©  

> А попрубуй до 20 Мб размер довести


Странная у тебя логика... Или это я неправильно понял? :))
Чем больше размер, тем круче прога? ну чтож, бывает.
Видел когда-нибудь калькулятор на 20мег? Я нет.


 
DevilDevil ©   (2006-04-02 02:03) [23]

Kolan ©   (01.04.06 19:31) [20]
Труд проектировщика, аналитика, программиста ... Стоит в сотни раз дороже какихто лишних 300kB... (это для тех кто считает что это много :)

Рамиль ©   (01.04.06 20:18) [21]
Не понимаю я все это. Подумаешь, 400 кб... И что? А попрубуй до 20 Мб размер довести. 400 кб на среднем диалапе чуть больше минуты скачиваетс. Зачем нужен KOL? Зачем нужно писать без VCL?

Вопросы немного филосовские.
> Зачем нужен KOL?
Чтобы писать компактные программы
> Зачем нужно писать без VCL?
Чтобы писать компактные программы
> Зачем писать компактные программы
А это уж, извините, пусть каждый сам решает. В основном, для распространения по сети. Для программ-приколов можно. В любом случае, прогу в 20кб качать приятнее, чем в 400кб. Ты пользуешься архиваторами? Зачем? :)
В любом случае, нет пределу совершенству


 
Германн ©   (2006-04-02 03:37) [24]


> except ©   (01.04.06 03:49) [15]
>
>
> > Извиню, если представишь подробно претензии с указанием
>
> > причин!
>
>
> 400кб для формы с одной кнопкой, одной ф-цией это как-то,
>  блин, многовато. На крайний случай (если программа не очень
> сложная) можно переписать её в c++builder"e, практически
> без знания c++(может не у всех получается, я за себя говорю).
>  400кб->от силы 40-50кб. Разница есть.
>
> PS Если нету c++builder можно использовать KOLиMCK


Увы, не представил причин.
Одна форма с одной кнопкой - это может и многовато. Но что это за программа?
Добавь ещё кнопки, добавь ещё формы - и насколько возрос размер?


 
Сергей М. ©   (2006-04-02 12:35) [25]


> Сделал простенькую программу


Тогда с Делфи тебе не по пути.

Делфи предполагает намного более "серьезные" программы.

На этой твоей форме, что тебя столь взволновала своими т.н. "объемами", могут быть сотни и сотни контролов, и в модуле этой формы могут быть сотни и тысячи вызовов разных методов и разных п/программ - и при всем при этом рост "объема ехе. файла" по отношению к "объему" твоего примитивного по функциональности приложения составит до смешного малую цифру.


 
Рамиль ©   (2006-04-02 12:40) [26]


> except ©   (01.04.06 23:59) [22]


> Странная у тебя логика... Или это я неправильно понял? :
> ))
> Чем больше размер, тем круче прога? ну чтож, бывает.
> Видел когда-нибудь калькулятор на 20мег? Я нет.

Не правильно понял. Я имел виду, что "пустой" exe 400 Кб, а дальше размер слабо растет. Что бы получить exe размером 20 Мб надо очень много кода написать. Т. е. аналогично

> могут быть сотни и сотни контролов, и в модуле этой формы
> могут быть сотни и тысячи вызовов разных методов и разных
> п/программ - и при всем при этом рост "объема ехе.


 
Anatoly Podgoretsky ©   (2006-04-02 14:14) [27]

tipman ©   (31.03.06 23:59) [10]
1 апреля через минуту.


 
Anatoly Podgoretsky ©   (2006-04-02 14:17) [28]

DevilDevil ©   (02.04.06 02:03) [23]
Вопросы немного филосовские.
> Зачем нужен KOL?
Чтобы писать компактные программы

Зачем нужно писать компактные программы?

> Зачем нужно писать без VCL?
Чтобы писать компактные программы

Зачем нужно писать компактные программы?

> Зачем писать компактные программы
А это уж, извините, пусть каждый сам решает. В основном, для распространения по сети. Для программ-приколов можно. В любом случае, прогу в 20кб качать приятнее, чем в 400кб. Ты пользуешься архиваторами? Зачем? :)

А все таки зачем? Приколистов на нары, а насчет Интернет, у тебя что интернет 300 бод?



Страницы: 1 вся ветка

Форум: "Начинающим";
Текущий архив: 2006.04.16;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.53 MB
Время: 0.038 c
2-1144123858
Тамды
2006-04-04 08:10
2006.04.16
1 нюанс работы с комбобокс


2-1143701690
Logos
2006-03-30 10:54
2006.04.16
Ну вот, кто-то грубиян, а ветку закрыли...


2-1144002474
Ded22
2006-04-02 22:27
2006.04.16
Как удалить из подчиненой таблицы ?


15-1143142521
Anonym
2006-03-23 22:35
2006.04.16
Программы для МК-52/61


15-1143094094
__DATA__
2006-03-23 09:08
2006.04.16
Очистить Desktop после рисования на нем





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский