![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Размер exe
E_ © (2004-12-12 22:41:00)Здраствуйте.
Скажите пож., почему размер проекта все равно
большой, хотя не исп. 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ибо.
Игорь Шевченко (2004-12-14 14:15:00) [1]
> Ну когда работаешь с WinApi исключения практически не нужны,
> ибо WinApi функции не генерирует дельфовые исключения
Я не совсем понял - разве исключения только генерируются функциями ? Во-первых с ними удобнее работать, так как пропадает нужда каждый раз проверять коды возврата, во вторых, Access Violation - тоже исключение.
Piter (2004-12-14 12:19:00) [2]Игорь Шевченко © (14.12.04 10:05) [32]
Работа с исключениями
Ну когда работаешь с WinApi исключения практически не нужны, ибо WinApi функции не генерирует дельфовые исключения. А если ты работаешь не с WinApi и у тебя подключены другие юниты, типа Forms, Classes - то SysUtils и так подключен.
много полезных функций
нужные функции можно вынести в отдельный модуль, типа SimpleSysUtils :)
Это все конечно для маленькой утилиты на WinApi, для серьезного приложения все это не актуально...
Игорь Шевченко (2004-12-14 10:05:00) [3]Piter © (13.12.04 23:07) [28]
Работа с исключениями, много полезных функций.
С уважением,
dr Tr0jan (2004-12-14 09:29:00) [4]Как говорится, "пакуй - не пакуй, все равно получишь ..."
sniknik (2004-12-13 23:21:00) [5]Хакер © (13.12.04 21:33) [27]
а кто про глюки говорил? почитай статьи. просто если на феррари к примеру только со скоростью 40км в час ездить можно (а если 2 рядом то 20км... а в гонке из 30 машин лидирует черепаха...), то это тоже не поломка... но все же чтото не то, явно...
Palladin (2004-12-13 23:20:00) [6]У меня прибавил ровно 30Kb, D6. В SysUtils много нужных рутинных инструментов + Exception и по этому он стоит своих тридцати...
Piter (2004-12-13 23:07:00) [7]Игорь Шевченко © (13.12.04 0:23) [6]
SysUtils оставить.
А я бы выкинул...
SysUtils прибавляет к exe килобайт 8-10, если не ошибаюсь.
по-моему, килобайт 40. Если не ошибаюсь...
Игорь Шевченко © (13.12.04 13:25) [25]
> SysUtils прибавляет к exe килобайт 8-10, если не ошибаюсь.
И избавляет от геморроя.
какого?
С уважением, Piter
Хакер (2004-12-13 21:33:00) [8]я ВСЕГДА прогу UPX сжимаю - глюков НИКОГДА не было !!!
- смело пакуй !
Gero (2004-12-13 17:58:00) [9]
> И избавляет от геморроя.
Точно так же можно сказать, допустим, про Forms.
Игорь Шевченко (2004-12-13 13:25:00) [10]Gero © (13.12.04 00:59) [12]
> SysUtils прибавляет к exe килобайт 8-10, если не ошибаюсь.
И избавляет от геморроя.
С уважением,
Fay (2004-12-13 05:49:00) [11]
>if h = 0 then
> ShowMessage(' Файл не найден!')
Довольно смелое заявление
Юрий Зотов (2004-12-13 05:16:00) [12]Учитывая, что что в этом коде исключение может возникнуть только в Load (см. [14]), а также учитывая, что в конструкции
try
...
except
on E: Exception do
...
end;
подчеркнутая строка на фиг не нужна, SysUtils можно тоже выкинуть. Тогда после замены ShowMessage на MessageBox и выкидывания Dialogs (см. [1]), эта программа будет весить килобайт так 15. Видимо, все проблемы на этом и закончатся.
Anatoly Podgoretsky (2004-12-13 01:35:00) [13]К тому же там не рассмотрен такой тонкий момент, как запуск нескольких копий программ и особенно библиотеки. Ситуацие ухудщится еще в большей степени.
sniknik (2004-12-13 01:29:00) [14]примерно то же что по уже приведенной ссылке, немного полнее
http://www.limtu.ru/vt/zone/gold2/pub/komp.htm
Bobby Digital (2004-12-13 01:27:00) [15]да как позезные, защищают комп от вредных вирусов, как мыло Safeguard
i-s-v (2004-12-13 01:24:00) [16]
> может что-то полезное только незаметно :)
Полезные вири?:)
Anatoly Podgoretsky (2004-12-13 01:23:00) [17]Bobby Digital © (13.12.04 00:58) [11]
Конечно есть, если пользователь заметит, то может и морду набить.
sniknik (2004-12-13 01:20:00) [18]все что незаметно то вири, трояны и спам..., а если не назаметно то тот же rar сожмет дучше.
Gero (2004-12-13 01:11:00) [19]
> GuAV © (13.12.04 01:08)
Если размер критичен, все это не так важно.
Bobby Digital (2004-12-13 01:09:00) [20]
> i-s-v ©
необязательно ... может что-то полезное только незаметно :)