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

Вниз

Убить System.pas   Найти похожие ветки 

 
RustiK   (2004-08-17 10:07) [0]

Привет всем!

Может мне кто подсказать как мне можко избавиться от модуля system.pas автоматически подключаемого к проекту при компиляции.
Если просто из uses убрать не прокатит, в других модуля он прописан. В тот же Forms он присутствует. Т.е. если я подключаю хоть один модуль, в котором хоть в одном зависимом модуле прописан system.pas, то хошь нихошь он опять таки липнет к проекту при компиляции. Как мне от него избавиться?


 
Iconka ©   (2004-08-17 10:08) [1]

Зачем?


 
Digitman ©   (2004-08-17 10:11) [2]


> RustiK   (17.08.04 10:07)  


чем тебе так насолил этот модуль ?


 
RustiK   (2004-08-17 10:11) [3]


> Зачем?


Уменьшить EXE-шник !!!


 
Гаврила ©   (2004-08-17 10:11) [4]

Никак


 
Rem   (2004-08-17 10:14) [5]

Правильно! А еще, в целях оптимизации, давайте отрубим Рустику руки и ноги, чтобы он меньше весил! А можно и голову...


 
Digitman ©   (2004-08-17 10:14) [6]


> RustiK   (17.08.04 10:11) [3]
> Уменьшить EXE-шник !!!


20..30 кб - это разве размер ?! ...


 
имя   (2004-08-17 10:14) [7]

Удалено модератором


 
RustiK   (2004-08-17 10:15) [8]

Тут хоть раз могут нормально ответить по существу, без выпендрежа?

Ну может чем заменить? Хотя не раз слышал, что как-то можно его не использовать вообще.


 
Digitman ©   (2004-08-17 10:16) [9]


> RustiK   (17.08.04 10:15) [8]


ты GetMem пользуешь явно или неявно ? с типом string работаешь ?


 
RustiK   (2004-08-17 10:20) [10]


> gigabyte.iatp.org.ua   (17.08.04 10:14) [7]
> Чтоб уменьшить екзешник, лучше эти самые Forms и Classes
> убери и пиши на WinAPI

Чесно говоря я и так на WinAPI пишу (не давно начал), но остается одно "но".
Не все можно быстро и качественно написать на WinAPI.


> 20..30 кб - это разве размер ?! ...


Кто-то на этом форуме кричал, кто не помню, что отказываясь от system.pas можно сэкономить ~200 кило.


> ты GetMem пользуешь явно или неявно ? с типом string работаешь
> ?


и что?


 
Digitman ©   (2004-08-17 10:22) [11]


> Кто-то на этом форуме кричал, кто не помню, что отказываясь
> от system.pas можно сэкономить ~200 кило.


глупости это


> и что?


а то что менеджер памяти, распределяющий память приложения при работе хотя бы с тем же string, реализован именно в system


 
VMcL ©   (2004-08-17 10:23) [12]

>>RustiK  (17.08.04 10:11) [3]

Стараться написать супермаленький экзешник на Delphi - это третье извращение после футбола на льду и хоккея на воде, потому что Delphi для этого не предназначен. Хочешь супермаленький экзешник - пиши на чистом ассемблере.


 
Dyn`alt ©   (2004-08-17 10:25) [13]

Переходи на KOL&MCK: компактность кода + визуальность


 
RustiK   (2004-08-17 10:26) [14]


>
> а то что менеджер памяти, распределяющий память приложения
> при работе хотя бы с тем же string, реализован именно в
> system


Разве нельзя вырезать тот кусок кода из system и засунуть в свой проект?


 
Digitman ©   (2004-08-17 10:28) [15]


> RustiK   (17.08.04 10:26) [14]


а попробуй-ка вырежь !

и это только мизер (но один из самых важных) в функциональности модуля, которой ты так или иначе пользуешься, сам того не ведая ... так что ох как много "вырезать" придется !


 
Iconka ©   (2004-08-17 10:29) [16]


> Разве нельзя вырезать тот кусок кода из system и засунуть
> в свой проект?

Действуй!


 
Erik1   (2004-08-17 10:29) [17]

To RustiK
Ну ты и дурак, тебе говорят ненадо значить ненадо! А размер ты практически неуменьшиш, потому, что из system включается только то, что используется. Это значить ты сможеш добится экономии в 10Kb. А это полный бред и нечего с этим лезть на форум по Delphi. Перебирайся на ASM и их форум, возможно там этот вопрос будет уместен.


 
RustiK   (2004-08-17 10:30) [18]


> а попробуй-ка вырежь !

Ну хорошо допустим избавиться от него нельзя.

Ну заметить то чем-нибудь можно же.


 
Digitman ©   (2004-08-17 10:34) [19]


> RustiK   (17.08.04 10:30) [18]


тебе ж говорят - не занимайся дурью !

ибо если ты со string работаешь, то тебе не только system, но и sysutils придется "кромсать"/"менять" ... ты попросту заработаешь себе геморрой, неизвестно ради чего)


 
RustiK   (2004-08-17 10:35) [20]


> Erik1

Сам ты дурак, и уши у тебя кривые. Прежде чем залеть на этот форум почитай правило о вежливости.

И гон все это чистой воды, что подключается только то, что используешь. Если ты хоть одну функцию хоть из одного 10 мегабайтного модуля используешь то он весь и компилиться всместе с твоим проектом


 
RustiK   (2004-08-17 10:37) [21]

Злые вы все, уйду я от вас..... :((((


 
sergch   (2004-08-17 10:37) [22]

Необходимо использовать ассемблерные вставки.


 
Digitman ©   (2004-08-17 10:39) [23]

да куда ты денешься)


 
Digitman ©   (2004-08-17 10:41) [24]


> RustiK   (17.08.04 10:37) [21]


злые мы, видите ли ..

у тебя блажь в голове, а мы злые ... потому что прямо говорим тебе об этом ... и отнюдь не без аргументов ...


 
RustiK   (2004-08-17 10:43) [25]


> Digitman ©   (17.08.04 10:39) [23]
> да куда ты денешься)

Эээээх... ваша правда, все равно вернусь...

Не жить вам без нас простых пользователей, ламеров программеров и просто участников форума... ;)


 
RustiK   (2004-08-17 10:48) [26]

Вот нашел посмотрите что пишут...

http://doc.trecom.tomsk.su/Delphi/Borland_Delphi_40_Developers_guide/www.user.cityline.ru/~vlelenaf/delphi/a473.htm


 
REA ©   (2004-08-17 10:49) [27]

Да ладно - чего наехали на человека. Я в свое время classes уродовал и довольно успешно. Пусть себе развлекается.


 
Digitman ©   (2004-08-17 10:54) [28]


> Вот нашел посмотрите что пишут


ну правильно ! тебе там и пишут, что тебе следует удалить несущественное/неиспользуемое из system и перекомпилировать его  ... только вот незадача : ты сам-то знаешь , что тебе удалять нужно оттуда ?


 
RustiK   (2004-08-17 10:55) [29]


> ты сам-то знаешь , что тебе удалять нужно оттуда ?

Ну подскажи если не трудно


 
Digitman ©   (2004-08-17 10:57) [30]


> RustiK   (17.08.04 10:55) [29]


чудак человек !)

это ж напрямую зависит от того, что ты планируешь наворотить в своей программе !


 
RustiK   (2004-08-17 10:57) [31]

с учетом того что не собираюсь использовать никаких inttostr и все такое


 
Рамиль ©   (2004-08-17 10:57) [32]


> ты сам-то знаешь , что тебе удалять нужно оттуда ?

Так ему же весь надо было удалить. Пусть оставит
unit System;

interface

implementation

end.


И компилит на здоровье


 
RustiK   (2004-08-17 10:58) [33]

Эх ладно щя по моему наличности переходит будем, лучше закрыть эту ветку.

ВСЕМ ПОКА, ВСЕМ СПАСИБО!


 
Рамиль ©   (2004-08-17 10:58) [34]


> с учетом того что не собираюсь использовать никаких inttostr
> и все такое

IntToStr, между прочим, описана в SysUtils


 
RustiK   (2004-08-17 11:00) [35]

Мужики только по голове не бейте...
У меня по моему ошибка в вопросе была :)))))))))


 
Digitman ©   (2004-08-17 11:02) [36]


> RustiK


угу ... чайником бы тебя по макушке) ... чтобы не путал sysutils с system)


 
Anatoly Podgoretsky ©   (2004-08-17 11:05) [37]

Единственный метод "удалить" system это все оттуда убрать, он останется, но будет пустым. То что у тебя не будет работать к делу не относится, ты же хотел избавиться.


 
Юрий Зотов ©   (2004-08-17 11:18) [38]

> RustiK   (17.08.04 10:20) [10]

> Кто-то на этом форуме кричал, кто не помню, что отказываясь от
> system.pas можно сэкономить ~200 кило.

На этом, и на других форумах произносится немало глупостей. В том числе и упомянутая Вами. Не нужно верить всему подряд. Мало ли, кто чего ляпнет, по безграмотности и дури своей, или просто в шутку?

Доказать? Пожалуйста. Экзешник вот такой пустой программы:
program Project1;
begin
end.
будет весить примерно 15 кило, несмотря на подключенный модуль System. О какой же экономии в 200 Кб может тогда идти речь?

Далее - эти 15 кило тоже не принадлежат одному лишь модулю System, еще они уходят на различные служебные дела (формат PE-файла, код загрузки системных библиотек и пр.). А из модуля System здесь подключается только необходимый служебный код, который используется всегда, даже и в пустом проекте

Далее. Вот Вы говорите что пишете на чистом API. ОК. Напишите на чистом API программу, которая просто показывает пустое окно - увидите, что она тоже весит примерно 15 кило. И тоже несмотря на подключенный модуль System. Мы видим, что по сравнению с пустым проектом размер программы практически не изменился. Значит, делаем вывод: написание программ на чистом API - вот это и есть то, что нам и нужно, если мы хотим бороться за малый размер.

И это так и есть. Потому что, сколько бы функций API мы не вызывали, код системных библиотек, где они сидят, все равно один, и в наш EXE он не входит. Входить в EXE будет только написанный НАМИ код, размер которого получится очень малым (реально - несколько десятков Кб, вряд ли более).

> RustiK   (17.08.04 10:35) [20]

> И гон все это чистой воды, что подключается только то, что
> используешь. Если ты хоть одну функцию хоть из одного 10
> мегабайтного модуля используешь то он весь и компилиться
> всместе с твоим проектом

Ну я же говорил - на этом, и на других форумах произносится немало глупостей. Зачем же еще увеличивать их количество?


 
Anatoly Podgoretsky ©   (2004-08-17 11:32) [39]

Потом кто то другой будет ссылаться на эту глупость. :-)


 
RustiK   (2004-08-17 11:41) [40]

Спасибо за разъяснительный ответ.

Как я и говорил что я ошибся в названии файла. Мне нужно избавиться от SysUtils.pas. Возможно ли вообще от него избавиться или урезать или заменить?



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

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

Наверх




Память: 0.56 MB
Время: 0.047 c
14-1092579197
Soft
2004-08-15 18:13
2004.09.05
Вирусы добрались до копира:)


4-1090566377
Form_1
2004-07-23 11:06
2004.09.05
Неправильное преобразование?


14-1092674321
bender
2004-08-16 20:38
2004.09.05
Поделитесь мнением


1-1092677365
Firstborn
2004-08-16 21:29
2004.09.05
TComboBox: странность с Charset


1-1092743087
Jiuraasdasd
2004-08-17 15:44
2004.09.05
Как сделать проверку орфографии?