Форум: "Основная";
Текущий архив: 2004.12.26;
Скачать: [xml.tar.bz2];
ВнизРазмер 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;
Скачать: [xml.tar.bz2];
Память: 0.52 MB
Время: 0.036 c