Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.04.25;
Скачать: CL | DM;

Вниз

Как уменьшить размер ехе-шника без визуальных компонентов   Найти похожие ветки 

 
Yong ©   (2004-04-08 23:20) [0]

Прога без визуальных компонентов в откомпиленом виде весит 283К. Если кто знает почему, и что можно с этим сделать, скажите пожалуйста, а?


 
Yanis ©   (2004-04-08 23:22) [1]

Ничего ты не сделаешь. Ты скорее всего функции всякие используешь в программе, а они объявлены в других модулях типа windows и др.
Да если даже и не используешь в программу всёравно запихиваются всякие там стринги и прочая "дрянь".
Поэтому ASSEMBLER тебе в помошники :)


 
Gero ©   (2004-04-08 23:25) [2]

program Project1;
uses
 Windows;
begin
 MessageBox(0, "Hello!", "Hello!", MB_OK);
end;

Скомпилируйте и посмотрите размер. Yanis © - Вы тоже.


 
Yong ©   (2004-04-08 23:29) [3]

У меня там еще Forms.pas используется, так что наверное без вариантов, да?


 
Diamond Cat ©   (2004-04-08 23:30) [4]

кроме редактирования uses-ов можно пднастроить компилятор и повытирать иконки из ресурсного файла (копейка рубль бережет)


 
sniknik ©   (2004-04-08 23:31) [5]

Forms как раз самый что ни на есть визальнейший компанент.


 
Yanis ©   (2004-04-08 23:33) [6]

Это вроде не компонент!?

To [2]
:)

To Yong ©   (08.04.04 23:29) [3]
Если не секрет почему так размер важен?


 
Yong ©   (2004-04-08 23:38) [7]

А Screen - это визуал?

to Yanis © Да просто текста там три строчки, и визуалов вроде нет, а весит че-то много.


 
Yanis ©   (2004-04-08 23:51) [8]

Всё что ты пишешь в редакторе это ничто иначе как текст.
А весь текст тире код программы переводится на ASM. Вот и размер растёт.

Так что за програ с супер малым размером ? Пакость что ли какая?


 
Yong ©   (2004-04-08 23:59) [9]

Янису: Прога скриншотит десять кадров десктопа с небольшим интервалом.


 
Yanis ©   (2004-04-09 00:11) [10]

А как скриншоты делаешь? Я думаю можно и на ASSEMBLER зафигачить :)


 
Yong ©   (2004-04-09 00:15) [11]

Янису:  BitBlt(bmp.Canvas.Handle, 0, 0, Screen.Width, Screen.Height, GetDC(GetDesktopWindow), 0, 0, SRCCopy);
// а ассемблер я херово знаю


 
Yong ©   (2004-04-09 00:22) [12]

Всем спасибо!


 
Yanis ©   (2004-04-09 00:25) [13]

Если сделаю то на мыло скину. А какой минимальный размер exe?


 
Gero ©   (2004-04-09 00:28) [14]

Screen.Width = GetSystemMetrics(SM_CXSCREEN)
Screen.Height = GetSystemMetrics(SM_CYSCREEN)


 
Yanis ©   (2004-04-09 00:30) [15]

To Gero [14]
???


 
Gero ©   (2004-04-09 00:32) [16]

> ???

Что именно не понятно?


 
Yanis ©   (2004-04-09 00:39) [17]

Это к чему?


 
_Sh_   (2004-04-09 00:39) [18]

Если в проге у тебя подключены такие модуля как Forms, Graphics, Dialogs, Controls и т.п., то к твоей проге в автомате цепляется TApplication и всё что с ним связано (даже если явно ты нигде его не юзаешь) - вот они твои 200 с фигом килобайт. Убери Screen и Bitmap-ы, перепиши на WinAPI или KOL - получишь спартанский размер.


 
Gero ©   (2004-04-09 00:41) [19]


>  [17] Yanis ©   (09.04.04 00:39)
> Это к чему?

Это к [7] и [11].


 
_Sh_   (2004-04-09 01:05) [20]

На худой конец можно пожать EXE-шник пакером типа UPX или ASPack, но это на самый крайний случай.


 
Fay ©   (2004-04-09 01:16) [21]

2Yanis ©   (08.04.04 23:33) [6]

> Это вроде не компонент!?

А что это?


 
_Sh_   (2004-04-09 01:22) [22]

TForm - компонент, но Forms - модуль!


 
Yanis ©   (2004-04-09 01:22) [23]

По твоему это компонент? Ну это вроде модуль с объявлениями классов и др.


 
Anatoly Podgoretsky ©   (2004-04-09 10:41) [24]

200 кб на винчестере не хватает, так соотри что ни будь, или это психологическая проблема - глаза режет?



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

Текущий архив: 2004.04.25;
Скачать: CL | DM;

Наверх




Память: 0.51 MB
Время: 0.039 c
1-1081630542
Klopan
2004-04-11 00:55
2004.04.25
массовое прописывание BackGround а


1-1081151226
Ozone
2004-04-05 11:47
2004.04.25
Handle - > bmp


7-1077878825
Laymer
2004-02-27 13:47
2004.04.25
TaskBar


7-1077969009
Duk
2004-02-28 14:50
2004.04.25
asm


4-1077375989
Юрий Ж.
2004-02-21 18:06
2004.04.25
Дата создания директории...