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

Вниз

Каким образом можно подменить System.pas   Найти похожие ветки 

 
Slym ©   (2004-12-08 06:11) [0]

Потребовалось поменять несколько стандартных проседур для работы со строками (находятся они в System.pas), но стандартная System.pas уже скомпилирована.
Если ложить свой System.pas к исходникам программы компилятор его игнорирует, а ручная компиляция юнита находит несколько ошибок. Одна из которых что-то типа "Can"t use reserved name System"


 
Slym ©   (2004-12-08 06:15) [1]

Суть изменений: добавить строкам упреждающее изменение объема памяти (Capacity)


 
Alexander Panov ©   (2004-12-08 12:52) [2]

Можно в своем модуле переопределить нужные функции и изменить порядок загрузки модулей ы USES на нужный.


 
Alex Konshin ©   (2004-12-08 13:00) [3]

Alexander Panov ©   (08.12.04 12:52) [2]

Можно в своем модуле переопределить нужные функции и изменить порядок загрузки модулей ы USES на нужный.

А как это поможет для изменения Capacity?

Честно говоря не понимаю, зачем это может быть нужно. Уменьшить вероятность realloc? Можно попробовать с SetLength поиграться.


 
Slym ©   (2004-12-09 04:51) [4]

2 Alexander Panov:

в самом System.pas стороки начинают активно юзаться так что порядок тут уже не важен. И компилировать System.pas не хочет System.dcu удаляешь, жалуется типа нет System.pas или его бинарного аналога, хотя сам System.pas имеется в папке проекта.

Alex Konshin:
 объем кода растет пропорционально количеству операций со сторокаму+ за счет дублирования кода растет и компилированный код


 
Alex Konshin ©   (2004-12-09 06:38) [5]

Бороться с дублированием кода можно известным способом - выделением его в функции/процедуры. Я все равно не вижу, почему так нужно иметь доступ к Capacity? Это может быть нужно только для очень специфических случаев, а для этих случаев можно и написать специфические функции/процедуры. Можешь описать ситуацию, где тебе это требуется?


 
Ученик   (2004-12-10 23:42) [6]

>Slym ©   (08.12.04 06:11)  
В каталоге Delphi7\Sourc\Rtl создать каталог Lib, запустить make.exe, system.dcu скопировать в Delphi\Lib, перезапустить Delphi


 
Piter ©   (2004-12-11 02:30) [7]

Slym ©   (08.12.04 6:11)
Если ложить свой System.pas к исходникам программы компилятор его игнорирует


Shift+F11 и добавляешь в проект измененный .pas



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

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

Наверх




Память: 0.48 MB
Время: 0.058 c
1-1105961360
Кабан
2005-01-17 14:29
2005.01.30
Где взять иконки с палитры компонентов Delphi?


4-1102515267
Chaser
2004-12-08 17:14
2005.01.30
Как присвоить хинту иконки программы в трее значение переменной?


1-1105689375
denis24
2005-01-14 10:56
2005.01.30
чайник про множества


9-1098607787
rydmi
2004-10-24 12:49
2005.01.30
Collusion.


3-1104155962
Артемиус
2004-12-27 16:59
2005.01.30
Как определить количество и имена таблиц в базе?