Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2003.08.11;
Скачать: [xml.tar.bz2];

Вниз

баги VCL - продолжение   Найти похожие ветки 

 
Толик   (2003-07-28 16:53) [0]

Уважаемые мастера. Существует ли возможность исправления ошибок в коде VCL?
Такая ситуация: Есть некий класс VCL, который в своём коде содержит ошибки. В случае компиляции пакета с опцией build with runtime package всё работает как надо (оно и понятно - код пакета формируется внутри exe). А существует ли возможность перекомпиляции runtime пакета, например vcl60.bpl, содержащего этот класс, чтобы не включать этот пакет в тело своего exe-файла?

Существует ли вообще какоё-нибудь механизм исправления ошибок VCL? (ну кроме обращения в службу тех. поддержки)


 
ZeroDivide   (2003-07-28 17:03) [1]

Интересно что за класс.

А вообще попробуй создать свой пакет с классами, которые ты используешь, и в инсталяху его добавь, а не vcl60.bpl.

Вобще то я с такими глюками не встречался - единственное что точно знаю в build with runtime package пакеты должны в определенной последовательности быть записаны. Может ты там поотключал чего, а потом не смог вернуть все как было?


 
AlexRush   (2003-07-28 17:05) [2]

> В случае компиляции пакета с опцией build with runtime package всё работает как надо (оно и понятно - код пакета формируется внутри exe) - ты сам понял, что написал ?? Вот как раз наоборот :))
А ошибки в большинстве случаев не в VCL... Они чаще в DNA.... (по себе знаю :)


 
KSergey   (2003-07-28 17:11) [3]

AlexRush © (28.07.03 17:05)
А ошибки в большинстве случаев не в VCL... Они чаще в DNA.... (по себе знаю :)


Ошибки - да. Хотя, с другой стороны, есть же признанные ошибки, заничит они все же есть ;) (да их не может не быть по определению)
Но ведь вопрос можно переформулировать так: есть желание подправить реализацию класса в VCL (сталкивался сам с модулем Pronters - они там все позапрятали в приват - как с ними бороться после этого? и потомок не спасет...)


 
Толик   (2003-07-28 17:32) [4]

to ZeroDivide © (28.07.03 17:03)
THeaderControl - ф-я DoSectionEndDrag
вместо

for i := 0 to Sections.Count - 1 do
SectionOrder[i] := Sections[i].ID;

должно быть

for i := 0 to Sections.Count - 1 do
SectionOrder[i] := Sections[i].Index;
Sections.Update(FromSection);
Sections.Update(ToSection);


to AlexRush © (28.07.03 17:05)
Ну смысл-то понятен. :)
В данном случае проблемы как раз в VCL.


 
AlexRush   (2003-07-28 20:06) [5]

Перекомпилить VCL - дело, мягко говоря, непростое. Я как то пытался. Можно подправить исходники в ComCtrls.PAS, можно его скомпилять... НО, при компиляции проги с использованием "подправленного" класса компилятор выдает что-то типа "юнит ХХХ и юнит YYY содержат разные версии класса ZZZ". Компилишь другие юниты - опять.... и так до уср#4ки. Потом окажется, что ДАЛЕКО НЕ ВСЯ VCL в исходниках.... геморойно это все. лучше уж свой клас написать. Сtrl+C / Ctrl+V из ComCtrls.PAS всего, что касается THeaderControl в отдельный юнит, так правь его аки фантазии хватит.. И делай новый компонент. IMHO самый простой путь.


 
Толик   (2003-07-29 10:17) [6]

А есть ещё какие-нибудь варианты, кроме как создавать свой компонент?


 
pasha_golub   (2003-07-29 11:51) [7]

Я уж не знаю, но я именно делал как описал AlexRush. Копи/Пасте и в новом модуле переписываешь чего надо. Неплохо получается, опять же не сможешь себе геморроя заработать, неверно исправив исходник.


 
Calm   (2003-07-29 13:28) [8]


> Перекомпилить VCL - дело, мягко говоря, непростое.

Да, подчас бывает тяжеловато сделать Project\Build All

:-))


 
Толик   (2003-07-29 13:31) [9]

Calm © (29.07.03 13:28)
Ну если всё запихнуть в один exe-шник, то да, а вот если с runtime пакетами?



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

Форум: "Основная";
Текущий архив: 2003.08.11;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.46 MB
Время: 0.007 c
14-33310
keymaster
2003-07-24 13:53
2003.08.11
Проблема с win XP


3-33056
Stanly
2003-07-18 10:40
2003.08.11
Востановление работы после обрава соединения(IBX)


4-33405
VShkoda_Shk
2003-06-11 12:53
2003.08.11
сообщение TEDIT


1-33094
ELKa
2003-07-29 15:13
2003.08.11
Динамические массивы в Делфи 3


14-33319
Schummi
2003-07-02 08:13
2003.08.11
GetUrlCacheEntryInfo





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский