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

Вниз

Размер exe   Найти похожие ветки 

 
E_   (2004-12-12 22:41) [0]

Здраствуйте.
Скажите пож., почему размер проекта все равно
большой, хотя не исп. uses forms.
Вот вариант:

program KSM;
uses
windows,
Dialogs,
SysUtils;
var
h: THandle;
Load:procedure;
begin
h := LoadLibrary("lib\Spl.iml");
if h = 0 then
ShowMessage(" Файл не найден!")
else
begin
try @Load := GetProcAddress(h, "Load");
if @Load <> nil then
Load;
except
on E: Exception do
ShowMessage("Ошибка инициализации библиотеки!");
end;
FreeLibrary(h);
end;
end.

Если можно уменьшить размер, то как сделать?
Спаcибо.


 
GuAV ©   (2004-12-12 23:01) [1]

E_   (12.12.04 22:41)
Dialogs,


Это использует Forms.

Можно убрать Dialogs, заменить ShowMessage на MessageBox .


 
i-s-v ©   (2004-12-12 23:49) [2]


> Если можно уменьшить размер, то как сделать?

Утилита запаковки ЕХЕ-файла:
http://upx.sourceforge.net/


 
SergP ©   (2004-12-12 23:53) [3]


>  [2] i-s-v ©   (12.12.04 23:49)
>
> > Если можно уменьшить размер, то как сделать?
>
> Утилита запаковки ЕХЕ-файла:
> http://upx.sourceforge.net/


Щас придет АП и обматюкает с ног до головы за такие советы... :-)


 
Gero ©   (2004-12-12 23:56) [4]


> Щас придет АП и обматюкает с ног до головы за такие советы

И правильно сделает.

> uses
> Dialogs,
> SysUtils;

Выкинуть нафиг.


 
i-s-v ©   (2004-12-13 00:07) [5]


> Выкинуть нафиг.

Это и до меня сказали:)


 
Игорь Шевченко ©   (2004-12-13 00:23) [6]

Gero ©   (12.12.04 23:56) [4]

SysUtils оставить.

С уважением,


 
Bobby Digital ©   (2004-12-13 00:39) [7]

Используй прогу ASPack пргга для ужимки файлов ... суперскал прога 500 кб после архиваци  будет занимать где-то 250 кб


 
GuAV ©   (2004-12-13 00:41) [8]

Bobby Digital ©   (13.12.04 0:39) [7]
Используй прогу ASPack пргга для ужимки файлов ... суперскал прога 500 кб после архиваци  будет занимать где-то 250 кб


За такое матюкать нужно больше чем за
i-s-v ©   (12.12.04 23:49) [2]
Утилита запаковки ЕХЕ-файла:
http://upx.sourceforge.net/


, т.к. она ещё и не распаковывается.


 
i-s-v ©   (2004-12-13 00:43) [9]


> Используй прогу ASPack пргга для ужимки файлов ... суперскал
> прога 500 кб после архиваци  будет занимать где-то 250 кб

Хоть ASPack и русский, но UPX лучше запаковывает :) К тому же, UPX бесплатный...


 
sniknik ©   (2004-12-13 00:55) [10]

какая разница, хоть ASPack хоть UPX или другие упаковщики, все одно это отстой, мешают системе... (только не надо рекламных проспектов с сайтов их разработчиков, лучше посмотрите независимые описания, на сайте Анатолия Подгорецкого по моему есть) а пользы от них нет (ну не считать же пользой экономию 200-300кб дискового пространства на 80ти гиговом диске... смешно).


 
Bobby Digital ©   (2004-12-13 00:58) [11]


> sniknik ©  

при чем тут экономия про 80 гб диске? А если ты незаметно от юзера шлешь ему это прогу через сеть? тут уз есть раница


 
Gero ©   (2004-12-13 00:59) [12]


> Игорь Шевченко ©   (13.12.04 00:23)

SysUtils прибавляет к exe килобайт 8-10, если не ошибаюсь.

> Bobby Digital ©   (13.12.04 00:58)

http://podgoretsky.com/ftp/Docs/Misc/ExePack/ExePack.html


 
i-s-v ©   (2004-12-13 01:08) [13]


> тут уз есть раница

Вири слать?...


 
GuAV ©   (2004-12-13 01:08) [14]

Gero ©   (13.12.04 0:59) [12]
SysUtils прибавляет к exe килобайт 8-10, если не ошибаюсь.


E_   (12.12.04 22:41) [0]
on E: Exception do


в SysUtils объявлен класс Exception.

Без SysUtils сисетмные ошибки не будут преобразованы в исключения.

Хотя IMHO исключение может возникнуть только в Load.


 
Bobby Digital ©   (2004-12-13 01:09) [15]


> i-s-v ©  

необязательно ... может что-то полезное только незаметно :)


 
Gero ©   (2004-12-13 01:11) [16]


> GuAV ©   (13.12.04 01:08)

Если размер критичен, все это не так важно.


 
sniknik ©   (2004-12-13 01:20) [17]

все что незаметно то вири, трояны и спам..., а если не назаметно то тот же rar сожмет дучше.


 
Anatoly Podgoretsky ©   (2004-12-13 01:23) [18]

Bobby Digital ©   (13.12.04 00:58) [11]
Конечно есть, если пользователь заметит, то может и морду набить.


 
i-s-v ©   (2004-12-13 01:24) [19]


> может что-то полезное только незаметно :)

Полезные вири?:)


 
Bobby Digital ©   (2004-12-13 01:27) [20]

да как позезные, защищают комп от вредных вирусов, как мыло Safeguard


 
sniknik ©   (2004-12-13 01:29) [21]

примерно то же что по уже приведенной ссылке, немного полнее
http://www.limtu.ru/vt/zone/gold2/pub/komp.htm


 
Anatoly Podgoretsky ©   (2004-12-13 01:35) [22]

К тому же там не рассмотрен такой тонкий момент, как запуск нескольких копий программ и особенно библиотеки. Ситуацие ухудщится еще в большей степени.


 
Юрий Зотов ©   (2004-12-13 05:16) [23]

Учитывая, что что в этом коде исключение может возникнуть только в Load (см. [14]), а также учитывая, что в конструкции

try
...
except
 on E: Exception do
   ...
end;

подчеркнутая строка на фиг не нужна, SysUtils можно тоже выкинуть. Тогда после замены ShowMessage на MessageBox и выкидывания Dialogs (см. [1]), эта программа будет весить килобайт так 15. Видимо, все проблемы на этом и закончатся.


 
Fay ©   (2004-12-13 05:49) [24]


>if h = 0 then
> ShowMessage(" Файл не найден!")

Довольно смелое заявление


 
Игорь Шевченко ©   (2004-12-13 13:25) [25]

Gero ©   (13.12.04 00:59) [12]


> SysUtils прибавляет к exe килобайт 8-10, если не ошибаюсь.


И избавляет от геморроя.

С уважением,


 
Gero ©   (2004-12-13 17:58) [26]


> И избавляет от геморроя.

Точно так же можно сказать, допустим, про Forms.


 
Хакер ©   (2004-12-13 21:33) [27]

я ВСЕГДА прогу UPX сжимаю - глюков НИКОГДА не было !!!
- смело пакуй !


 
Piter ©   (2004-12-13 23:07) [28]

Игорь Шевченко ©   (13.12.04 0:23) [6]
SysUtils оставить.


А я бы выкинул...

SysUtils прибавляет к exe килобайт 8-10, если не ошибаюсь.

по-моему, килобайт 40. Если не ошибаюсь...

Игорь Шевченко ©   (13.12.04 13:25) [25]
> SysUtils прибавляет к exe килобайт 8-10, если не ошибаюсь.

И избавляет от геморроя.


какого?

С уважением, Piter


 
Palladin ©   (2004-12-13 23:20) [29]

У меня прибавил ровно 30Kb, D6. В SysUtils много нужных рутинных инструментов + Exception и по этому он стоит своих тридцати...


 
sniknik ©   (2004-12-13 23:21) [30]

Хакер ©   (13.12.04 21:33) [27]
а кто про глюки говорил? почитай статьи. просто если на феррари к примеру только со скоростью 40км в час ездить можно (а если 2 рядом то 20км... а в гонке из 30 машин лидирует черепаха...), то это тоже не поломка... но все же чтото не то, явно...


 
dr Tr0jan   (2004-12-14 09:29) [31]

Как говорится, "пакуй - не пакуй, все равно получишь ..."


 
Игорь Шевченко ©   (2004-12-14 10:05) [32]

Piter ©   (13.12.04 23:07) [28]

Работа с исключениями, много полезных функций.

С уважением,


 
Piter ©   (2004-12-14 12:19) [33]

Игорь Шевченко ©   (14.12.04 10:05) [32]
Работа с исключениями


Ну когда работаешь с WinApi исключения практически не нужны, ибо WinApi функции не генерирует дельфовые исключения. А если ты работаешь не с WinApi и у тебя подключены другие юниты, типа Forms, Classes - то SysUtils и так подключен.

много полезных функций

нужные функции можно вынести в отдельный модуль, типа SimpleSysUtils :)

Это все конечно для маленькой утилиты на WinApi, для серьезного приложения все это не актуально...


 
Игорь Шевченко ©   (2004-12-14 14:15) [34]


> Ну когда работаешь с WinApi исключения практически не нужны,
> ибо WinApi функции не генерирует дельфовые исключения


Я не совсем понял - разве исключения только генерируются функциями ? Во-первых с ними удобнее работать, так как пропадает нужда каждый раз проверять коды возврата, во вторых, Access Violation - тоже исключение.



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

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

Наверх




Память: 0.55 MB
Время: 0.024 c
1-1103007006
NeyroSpace
2004-12-14 09:50
2004.12.26
Как оптимальнее всего хранить список из пар число - строка?


1-1102524115
Костя
2004-12-08 19:41
2004.12.26
чтение файла


3-1101198758
Tomkat
2004-11-23 11:32
2004.12.26
Программное добавление юзера IB


1-1102796522
Mega Mike
2004-12-11 23:22
2004.12.26
Рабоат функции или процедуры в фоновом режиме...


1-1102681458
Алина
2004-12-10 15:24
2004.12.26
Центрорование