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

Вниз

Версия 2.38   Найти похожие ветки 

 
Vladimir Kladov   (2006-08-25 18:58) [0]


Новости от 25 августа 2006 г.

Новости KOL и MCK (v2.38):
[*]MCK: оптимизирована генерация кода, работает теперь намного быстрее. Добавлены свойства TKOLProject.GeneratePCode и TKOLProject.ReportDetailed.
[*]KOL: изменения в файле KOLDEF.INC для лучшей работы Delphi 2005 и Delphi 2006 с KOL (хотя эти версии Delphi и не поддерживают MCK). Изменения от Thaddy de Koning, спасибо.
[+]KOL: добавлена функция SwapListItems для использования с SortData для сортировки списков (TList).
[-]KOL: изменения в коде функции iSqrt - для случая старых компиляторов (Delphi4 и старше) возвращен прежний, более совместимый, код (кажется, именно этот вариант кода работает и с Free Pascal 1.XX.XX). Для более современных компиляторов Delphi и Free Pascal новый код сохранен (должен быть более оптимален).
[*]KOL/MCK: вызов MessageBox в паскаль-версии метода TControl.CreateWindow для случая, когда дескриптор окна не создан успешно обращением к CreateWindowEx, перемещен в скобки {$IFDEF DEBUG_CREATEWINDOW}...{$ENDIF}. Это заодно исправляет работу в Delphi IDE с проектами MCK, содержащими графические (не оконные) контролы.
[*]KOL: небольшое изменение в методе TBitmap.GetCanvas: кисть (Brush) создается только в случае, когда свойство BkColor не равно черному цвету. В asm-версии, это добавляет к коду только одну 2х-байтную инструкцию, делая приложение при этом несколько эффективнее.
[-]KOL: исправлен метод TBitmap.Convert2Mask. Для изображений с шириной, кратной 32, прежний код работал некорректно, делая первые 8 пикселей каждой пиксельной линии полностью непрозрачными. Спасибо за баг-репорты.
[-]KOL: исправлен метод TControl.GraphicButtonMouse. Если клавиша мыши была нажата вне графического контрола, а отпущена на нем, это приводило к вызову RefDec без соответствующего парного вызова RefInc, и в результате контрол самоуничтожался, исчезая с формы. Спасибо за баг-репорт.
[*]MCK: стало возможно пересобрать MCK с опцией DISABLE_GRAPHIC_CONTROLS для единовременной конвертации всех графических контролов в обычные оконные без исправления для всех них значения свойства Windowed (свойство сохраняет свое значение, но MCK при наличии этой опции считает все контролы оконными, и генерирует код как для оконных).


 
MTsv DN ©   (2006-08-26 09:27) [1]

Привет...

Также обновление доступно на http://www.kolnmck.ru

С Уважением MTsv DN


 
ANTPro ©   (2006-08-26 14:33) [2]

Жаль, что строка с №24355 осталась неисправленной (прога после компиляции благополучно повисла).
PS: Насчет ActiveX его отключение заняло добавление пяти {IFDEF USECOMMDLG} после чего размер EXE/DLL уменьшился на килобайт, но есть и минусы: не будут работать диалоги и GRush.


 
Vladimir Kladov   (2006-08-26 17:25) [3]

Что за мтрока, эта, столь?
       if C <> #10 then Position := Position - 1;

Или про другую какую речь. По номерам не надо, номера меняются.


 
ANTPro ©   (2006-08-26 17:40) [4]

Vladimir Kladov   (26.08.06 17:25) [3]
Ну да Thaddy показал решение
А как насчет COMMDLG?


 
AndreyRus   (2006-08-26 19:24) [5]

ANTPro, вы пьяны, что ли? Три раза перечитал ваши сообщения, ничего не понял! О чем речь?


 
ANTPro ©   (2006-08-26 19:55) [6]

Не пью ... а если че не понятно так могу обьяснить, хотя вот это думаю получше любых обяснений будет:
www.antprog.narod.ru/kol2.38.exe [27 кб]
Надо будет сделать Build All (*.upd не знаю чем делается)


 
AndreyRus   (2006-08-26 22:31) [7]

Точно пьяный :)
Кому это надо, качать ваш EXE"ник, который неизвестно что делает и к тому же, возможно, содержит вирус.

Просто сообщите сюда суть проблемы!


 
ANTPro ©   (2006-08-26 23:58) [8]

AndreyRus   (26.08.06 22:31) [7]
А че собственно не понятно? Что KOL содержит ссылку на модуль под названием ActiveX. А этот модуль содержит в себе секцию инициализации/финализации (кстати, как и Types). Компилятор сует это в любой EXE/DLL.
Ладно открываем ЛЮБОЙ KOL проект (лучше пустой) далее Component>Install Packages…> поставить галочку Build with Runtime packages давим кнопочку OK
Компилируем. И смотрим в секцию Import"a и видим:
Function      Activex::Finalization()
Function      Activex::initialization()

ОЧЕНЬ сомневаюсь, что все выше написанное будет проделано …  
KOL2.38.exe это SFX:
Лучшего патчера (а другого я и невидел пока) Binary Diff v 4.2.0 www.risp.ru

Что еще не понятно?


 
AndreyRus   (2006-08-27 11:42) [9]


> KOL содержит ссылку на модуль под названием ActiveX. А этот
> модуль содержит в себе секцию инициализации/финализации
> (кстати, как и Types). Компилятор сует это в любой EXE/DLL.


Ерунда. Посмотри исходники этих файлов на предмет строк - Initialization и Finalization.


> Component>Install Packages…> поставить галочку Build with
> Runtime packages давим кнопочку OK. Компилируем.


В программа созданных с помощью KOL использование "Build with Runtime packages" бесcмыслено :)


 
ANTPro ©   (2006-08-27 12:07) [10]

AndreyRus   (27.08.06 11:42) [9]
Я так и знал ...


 
Vladimir Kladov   (2006-08-27 12:17) [11]

А в чем проблема заключатся? В тех версиях Delphi, что я использую (до 7), в ActiveX нет строк initialization/finalization. Или они появляются в BDS 2005-2006? Отключить commdlg (который задействует shlobj, из которого и идет обращение к ActiveX) несложно. В следующей версии будет. Я не видел дискуссии по этому поводу на форуме. Ссылку не могли бы дать?


 
ANTPro ©   (2006-08-27 12:45) [12]

Vladimir Kladov   (27.08.06 12:17) [11]
Я не видел дискуссии по этому поводу на форуме.

Она собственно здесь ...

Я не заглядывал в ActiveX. Но если проделать все выше описанное, то некоторые модули будут браться из rtl70.bpl (вот здесь то и всплывает ActiveX)


 
ANTPro ©   (2006-08-27 12:57) [13]

На форуме увидел такую вещь:
"Вариант KOL для классов"

А чем конвертируется KOL?


 
Vladimir Kladov   (2006-08-27 13:49) [14]

Build with RunTime packages - не имеет смысла и не нужен в проектах с KOL. Вы не сможете запустить приложение с этой галочкой на машине без этих пакетов.


 
ANTPro ©   (2006-08-27 14:59) [15]

Vladimir Kladov   (27.08.06 13:49) [14]
Да я знаю просто так нагляднее посмотреть, что используется программой из стандартных модулей. Что бы потом избавиться или заменить не нужное.


 
AndreyRus   (2006-08-27 18:26) [16]

ANTPro = Паровоз 2? :)


 
homm ©   (2006-08-27 20:32) [17]

> ANTPro = Паровоз 2? :)

Не стоит вот так сразу ярлыки на людей вешать ;)


 
ANTPro ©   (2006-08-28 12:15) [18]

AndreyRus   (27.08.06 18:26) [16]
Непонял???


 
AndreyRus   (2006-08-28 13:49) [19]

Ну и ладушки :)
Это не имеет отношения к KOL.



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

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

Наверх




Память: 0.51 MB
Время: 0.046 c
2-1175797381
..::KraN::..
2007-04-05 22:23
2007.04.29
Красивая форма.


2-1176116225
defiler
2007-04-09 14:57
2007.04.29
Windows AD


15-1175503029
X9
2007-04-02 12:37
2007.04.29
Ну наконец-то...


1-1172815571
Бригадир
2007-03-02 09:06
2007.04.29
Собственная отрисовка PopupMenu


3-1170750979
MZ
2007-02-06 11:36
2007.04.29
формат даты в InterBase