-
Долго не программил на KOL/MCK. Недавно открыл старый проект. Компилирую - ошибка. Оказывается, во всех inc-файлах в строках создания компонентов вместо NewLabel подставляется NewGraphLabel, вместо NewEdit подставляется NewGraphEdit и т.п.
Вот так:
Result.RadioBox1 := NewGraphRadioBox( Result.GroupBox1, ' Краткий (только итог)' ).SetPosition( 8, 20 ).SetSize( 257, 20 );
Если руками поправить - компилирует нормально. Но при любом изменении контролов на любой форме эта хрень в соотв.файле вылазит снова.
Версия KOL 2.58. Проверил - в других проектах то же самое.
-
Посмотри в Инспекторе объктов
KOLProject1
outdcuPath ... и
sourcePath ...
Там должны быть правелтные пути.
-
Где-то затесался символ
USE_GRAPHCTLS
-
> [2] Дмитрий К © (04.12.07 09:55)
> Где-то затесался символ USE_GRAPHCTLS
Да скорее наоборот, контролы графические используются, а символа нет.
-
нет, контролы 100% неграфические.
насчет символа - нет такого.
пути - верные.
-
2.58 или 2.85?
-
Посмори все ли галочки стоят Проект -> Параметры -> Компилятор.
-
Версия 2.58.
Какие галки должны стоять в настройках компилятора? И как это может повлиять на MCK?
-
> [7] miek (04.12.07 22:44)
> Версия 2.58.
Ставь 2,85, будет разговор. Про старые версии с вероятностью 90% никто не ответить, никому не нужно.
-
> Какие галки должны стоять в настройках компилятора?
Генерация кода -> Оптимизация (немного уменшит размер приложения),
Параметр синтекса -> Думаю что лучше все (иначе что небудь компилится небудет (Например у мненя без галки Huge strings, с PChar непонимался)),
Динамические ошибки -> I/0 checking (думаю не помешает),
Отладка -> Все кроме Use Debug DCUs (А то запарит лесть в дебри),
Отладка нужна только во время разработки приложения.
-
поставил 2.83. Тот же результат.
-
Везде прописалось Windowed=false. Исправьте через ObjectInspector. Надо заглянуть в код MCK, почему по умолчанию не поставилось true, когда проект был открыт в новой версии.
-
я с подобным столкнулся недавно.
делал проект, в котором среди прочего использовалось NOT_USE_RICHEDIT, а потом открыл другой проект где ричедит был и нажал компилить. Компилятор недоуменно сказал "undeclared NewRichEdit" хотя ctrl+click исправно нашел эту команду.
Итого мораль сей басни такова: при разработке нескольких проектов с разными наборами символов условной компиляции при переключении между проектами трущиеся детали смазывать ребилдОлл'ом.
-
>Windowed=false. Исправьте через ObjectInspector
Помогло! Спасибо.