Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 10.04.2016, 20:10   #1
NetSpace
Участник клуба
 
Аватар для NetSpace
 
Регистрация: 03.06.2009
Сообщений: 1,792
Смущение Отключение модуля.

Народ! Как в Delphi 5 или 7 отключить автоматически подгружаемый модуль, Например, Controls.pas. Удалять из папок - не вариант, другим моим программам он нужен.
Некоторые модули надо прописывать при использовании некоторых функций, например, SysUtils.pas при использовании функции IntToStr().
А есть такие, которые сами прописываются в начале программы.
Вот как их отключить и чтоб вручную прописывать?
Программирование - это единственный способ заставить компьютер делать то, что тебе хочется, а не то, что приходится.
NetSpace вне форума Ответить с цитированием
Старый 10.04.2016, 20:18   #2
min@y™
Цифровой кот
Старожил
 
Аватар для min@y™
 
Регистрация: 29.08.2014
Сообщений: 7,656
По умолчанию

закомментарить в uses?
а зачем это надо-то?
Расскажу я вам, дружочки, как выращивать грибочки: нужно в поле утром рано сдвинуть два куска урана...
min@y™ вне форума Ответить с цитированием
Старый 10.04.2016, 20:30   #3
NetSpace
Участник клуба
 
Аватар для NetSpace
 
Регистрация: 03.06.2009
Сообщений: 1,792
По умолчанию

да было уже. при нажатии F9 он снова сам прописывается в uses.
для чего мне это надо: что хочу сделать урезанную версию модулей, чтоб программа не весила шибко много. EXEшник весит аж 1512 кБ - мало, скажешь?
Программирование - это единственный способ заставить компьютер делать то, что тебе хочется, а не то, что приходится.
NetSpace вне форума Ответить с цитированием
Старый 10.04.2016, 20:42   #4
min@y™
Цифровой кот
Старожил
 
Аватар для min@y™
 
Регистрация: 29.08.2014
Сообщений: 7,656
По умолчанию

Цитата:
1512 кБ - мало, скажешь?
перейдёшь на ХЕ10 - будешь сильно удивлён.
Много мёртвого кода добавляется, в первую очередь, из модулей classes и forms.
Да, размер ехе сократить можно, есть способы. Но выкидывание и/или переделка системных вещей - это:
а) аццкий геморрой, них никому не нужный;
б) уже сделана - это KOL.
Оно тебе надо? Да пусть прога 5+ мб весит, проще смириться и не обращать внимание.

Вот, например, всем известное УГ, сделанное НЕ на delphi.


Короче, выбрось проблему там, где нашёл, и забудь.
Расскажу я вам, дружочки, как выращивать грибочки: нужно в поле утром рано сдвинуть два куска урана...

Последний раз редактировалось min@y™; 10.04.2016 в 20:44.
min@y™ вне форума Ответить с цитированием
Старый 10.04.2016, 21:08   #5
NetSpace
Участник клуба
 
Аватар для NetSpace
 
Регистрация: 03.06.2009
Сообщений: 1,792
По умолчанию

ну, раз не хотите сказать где их отключать, то я подожду тех, кто знает.
а до Forms и Classes я доберусь. уже избавился от Messages, SysUtils, выковыряв из них пару нужных функций и потеряв 200 кб мертвечины. и для меня это не геморрой и не ацкий труд.
Программирование - это единственный способ заставить компьютер делать то, что тебе хочется, а не то, что приходится.

Последний раз редактировалось NetSpace; 10.04.2016 в 21:14.
NetSpace вне форума Ответить с цитированием
Старый 10.04.2016, 21:24   #6
min@y™
Цифровой кот
Старожил
 
Аватар для min@y™
 
Регистрация: 29.08.2014
Сообщений: 7,656
По умолчанию

Цитата:
то я подожду тех, кто знает.
оптимист!
Цитата:
а до Forms и Classes я доберусь
сам-то понял, чо сказал? Из classes.pas растёт иерархия всего VCL. А если отказаться от VCL, то и в самом Delphi смысла нет программировать. А в forms.pas помимо описания классов TCustomForm и т.п. живёт глобальный Application.

Улыбок тебе, дед Макар.
Будут результаты - покажешь - поставим тебе памятник. Нерукотворный, конечно!
Расскажу я вам, дружочки, как выращивать грибочки: нужно в поле утром рано сдвинуть два куска урана...
min@y™ вне форума Ответить с цитированием
Старый 10.04.2016, 21:43   #7
Человек_Борща
Старожил
 
Аватар для Человек_Борща
 
Регистрация: 30.12.2009
Сообщений: 11,442
По умолчанию

Нигде не отключить, если модуль дописывается компилятором, значит есть неявная связь с ним в коде. Ищите её.
Человек_Борща вне форума Ответить с цитированием
Старый 11.04.2016, 06:54   #8
phomm
personality
Старожил
 
Аватар для phomm
 
Регистрация: 28.04.2009
Сообщений: 2,876
По умолчанию

Смысла это делать, как у же сказали, нет, т.к. есть (не)явные зависимости, если делаете приложение на VCL-форме (не через WinAPI содаёте окна), то 99% что Controls нужен, ибо любой компонент(контрол) на форме требует этот модуль, они растут из него (там все предки), разве что форма пустая, но тогда кому она нужна..
Но от некоторых модулей можно избавляться без зазрения совести, например, Messages, Dialogs (заменить всякие меседжбоксы на аналоги из модуля Windows)
Могу ещё посоветовать приём по уменьшению модулей, используемых другими модулями (но не проектом в целом, что в итоге не даёт уменьшения места, но зато можо потом удобнее управлять зависимостями, в том числе меняя на менее затратные аналоги) - вынести все используемые типы из нежеланных модулей в один свой "общий" и дать типам псевдонимы, вроде TFileStream = Classes.TFileStream тогда во всех модулях будет ссылка на нужные модули и на этот общий, а только в самом общем ссылка на классес.

Ну и стундартные советы ещё попробуйте по уменьшению размера бинарей:
вкл релиз-сборку и добавить
Код:
{$RTTI EXPLICIT METHODS([]) PROPERTIES([]) FIELDS([])}
{$WEAKLINKRTTI ON}
в dpr-файл (для дельфи 2010+)
phomm вне форума Ответить с цитированием
Старый 11.04.2016, 09:40   #9
NetSpace
Участник клуба
 
Аватар для NetSpace
 
Регистрация: 03.06.2009
Сообщений: 1,792
По умолчанию

я не собираюсь во всех своих проектах отказываться от этих модулей. просто есть один проект, где надо бы их исключить. да и есть время и желание (во совпало-то как) покопаться в своём коде, написанном аж 7 лет назад - тормозит малость на 7, 8 и в 10, когда слова набираешь. под XP летает. я вот думаю, что из-за большого количества модулей.
13300 слов и словосочетаний.
Вложения
Тип файла: rar Klaviator.rar (398.9 Кб, 9 просмотров)
Программирование - это единственный способ заставить компьютер делать то, что тебе хочется, а не то, что приходится.
NetSpace вне форума Ответить с цитированием
Старый 11.04.2016, 09:47   #10
Alex11223
Старожил
 
Аватар для Alex11223
 
Регистрация: 12.01.2011
Сообщений: 19,500
По умолчанию

Вряд ли из-за этого.
Лучше б тормозящий код показали.
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом.
Alex11223 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Отключение HTTP AGlimov Работа с сетью в Delphi 14 16.06.2013 21:09
Отключение мышки Yuran Win Api 2 23.06.2008 13:08
отключение процессов UROKSAN Win Api 1 10.04.2008 09:08
Отключение питания Terran Общие вопросы Delphi 5 09.12.2007 00:44
Отключение клавиатуры Lonix Общие вопросы Delphi 4 04.09.2007 17:48