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

Вниз

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

 
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;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.49 MB
Время: 0.036 c
11-1062753303
<Falcon>
2003-09-05 13:15
2004.04.25
Merge в KOLmdvXLGrid - а как навесить на FormOnShow?


1-1081334577
}|{yk
2004-04-07 14:42
2004.04.25
Об интернационализации


14-1080804199
Nikolay M.
2004-04-01 11:23
2004.04.25
1 апреля в СМИ


1-1081242287
Tornado
2004-04-06 13:04
2004.04.25
Преобразование DOS -> Win


8-1074489491
Disruptor
2004-01-19 08:18
2004.04.25
Ролловер





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский