Текущий архив: 2004.11.28;
Скачать: CL | DM;
ВнизАвтоматически ломается KOL - проект Найти похожие ветки
← →
earl Grey (2004-04-26 09:30) [0]Дословно.
Работаю над проектом(уже неделю).
В какой-то момент KolTimer.Enable в Object Inspector"e ставлю False.
Перехожу в редактор. Все кирдык. В модуле формы дефайны дупятся в странном порядке. Компилятор соответсвенно таких приколов непонимает.
Чуть помучился. Плюнул. Гружусь из вчерашнего бэкапа. И просто визуально наблюдаю как в текст вставляются эти дупы! Зажусь за соседнюю машину - все впорядке. Ж%0
Собственно вопрос - как лечить или избегать такого. Понимаю что таймер тут не причем.
На всякий случай кусок пострадавшего модуля привожу:
-----------------Cut---------------------
{ KOL MCK } // Do not remove this line!
{$DEFINE KOL_MCK}
{ KOL MCK }// Do not remove this line!
{$DEFINE KOL_MCK}
unit MainFrm;
interface
{$IFDEF KOL_MCK}
{$IFDEF KOL_MCK}
uses Windows, Messages, ShellAPI, KOL {$IFNDEF KOL_MCK}, mirror, Classes, Controls, mckControls, mckObjs, Graphics {$ENDIF};
{$ELSE}
{$I uses.inc} Windows, Messages, ShellAPI, KOL{$IFNDEF KOL_MCK}, mirror, Classes,
Controls, mckControls, mckObjs, Graphics,
mckCtrls{$ENDIF};
{$ENDIF}
{$ELSE}
{$I uses.inc}
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs;
{$ENDIF}
type
{$IFDEF KOL_MCK}
{$I MCKfakeClasses.inc}
{$IFDEF KOLCLASSES} TMainForm = class; PMainForm = TMainForm; {$ELSE OBJECTS} PMainForm = ^TMainForm; {$ENDIF CLASSES/OBJECTS}
{$IFDEF KOLCLASSES}{$I TMainForm.inc}{$ELSE} TMainForm = object(TObj) {$ENDIF}
{$ELSE OBJECTS}PMainForm = ^TMainForm;
{$ENDIF CLASSES/OBJECTS}
TMainForm = class(TForm)
{$ENDIF}
Form: PControl;
{$ELSE not_KOL_MCK}
{$IFDEF KOL_MCK}
{$ENDIF KOL_MCK}
{$I MCKfakeClasses.inc}
{$IFDEF KOLCLASSES} TMainForm = class; PMainForm = TMainForm; {$ELSE OBJECTS} PMainForm = ^TMainForm; {$ENDIF CLASSES/OBJECTS}
{$IFDEF KOLCLASSES}{$I TMainForm.inc}{$ELSE} TMainForm = object(TObj) {$ENDIF}
Form: PControl;
{$ELSE not_KOL_MCK}
TMainForm = class(TForm)
{$ENDIF KOL_MCK}
KOLProject1: TKOLProject;
KOLForm1: TKOLForm;
KOLApplet: TKOLApplet;
RefreshTimer: TKOLTimer;
MainMenu1: TKOLMainMenu;
MainPopup: TKOLPopupMenu;
ProcLV: TKOLListView;
procedure KOLForm1N2Menu(Sender: PMenu; Item: Integer);
procedure RefreshTimerTimer(Sender: PObj);
procedure KOLForm1FormCreate(Sender: PObj);
procedure KOLForm1Destroy(Sender: PObj);
private
{ Private declarations }
public
{ Public declarations }
end;
var
MainForm{$IFDEF KOL_MCK}: PMainForm{$ELSE}: TMainForm{$ENDIF};
{$IFDEF KOL_MCK}
procedure NewMainForm( var Result: PMainForm; AParent: PControl );
{$ENDIF}
{$IFDEF KOL_MCK}
procedure NewMainForm( var Result: PMainForm; AParent: PControl );
{$ENDIF}
-----------------Cut---------------------
← →
Viman © (2004-04-26 10:12) [1]Бывает там такое :)
Замечал вот что - закрываешь в delphi проект. Лишнее в нем можешь удалить(в смысле бэкапфайлы, дцу).
Копируешь в другой каталог и открываешь из него(можешь перед этим еще и дельфу перезапустить).
Это конечно уже шаманство и пляски с бубном :), но как-то случайно такие вещи лечились именно таким образом. Пересмотр модулей ничего не давал. Может, конечно, еще что-то влияет...
Как альтернатива, пересоздать проект и добавить весь код и другие модули снова :)
← →
Viman © (2004-04-26 10:30) [2]Можешь так ещё пошаманить:
С глючной формы удалить(можно сначала свойство Locked попробовать попереключать) TKOLForm, с только что открытого из бэкапа проекта(может и с новым пройдет). Затем снова положить на форму TKOLForm, в инспекторе снова выбрать уже существующие процедуры на события. Посмотреть результат. Не помогает - поизменяй свойство build у TKOLProject. Оно конечно не измениться, но может он перестроит модули путем. Если ничего не помогает, пересобирай проект. :)
У меня как-то скобки([) из индексных свойств KOL упрямо убирал и ещё что-то. Убился я, но так и не понял почему...:(
Как глюк изчез, я и сам не понял, возможно атмосферное давление упало/поднялось, полнолуние настало... :) Или вышеописанное помогло. Не знаю. Пробуй. Может кто-то знает, скажите.
← →
earl Grey (2004-04-26 10:45) [3]У-у-у! Ладно, попробуем поискать. Больно уж не хочется пересобирать все заново.
← →
nester © (2004-04-26 14:17) [4]Попробуй так.
Закрой делфи.
В проекте убей все кроме
*.pas
*.dpr
*.dfm
Убивай даже inc"ки которые нагенерились(ну если в них ниче не добавлял) и уж тем более убивай всякие dsk"ашки и dof"ы
В общем чтобы осталось только то что непосредственно создано тобой.
Затем запускай дэлфу, она там чет матюкнется что ей чегото не хвататет и т.п. Нажми на колпрожекте перегенирить - вуаля заработает.
Ну если есть ресурсы или еще чего - придется заново втыкать.
← →
Viman © (2004-04-26 16:47) [5]>nester
Зачем ресурсы-то убивать ? :)
← →
nester © (2004-04-26 17:41) [6]Ну можно и не убивать.
Но для надежности!!!!!!!!!!!
← →
SPeller © (2004-04-26 17:57) [7]Странно. Описанного глюка лично я ниразу не наблюдал.
← →
Gandalf © (2004-04-26 21:21) [8]СТОП! РАСКАЗЫВАЮ историю старого шамана (Gandalf) - хранителя историй братсва KOL-ца, и белого пламени Анора, итак:
Собака тут:
{ KOL MCK } // Do not remove this line!
{$DEFINE KOL_MCK}
{ KOL MCK }// Do not remove this line!
{$DEFINE KOL_MCK}
Смотрит на это строки - что там написано?
Do not remove this line!
понимаете DO NOT!
но не только REMOVE но и вообще CHANGE в люьом смыле этого слова.
теперь смотрим сюда.
{ KOL MCK } // Do not remove this line!
{$DEFINE KOL_MCK}
{ KOL MCK }// Do not remove this line!
{$DEFINE KOL_MCK}
Улавливаете разницу? разница в пробеле... он ДОЛЖЕН быть.
Удаляй всех клонов их файла - и возвращай правильную первую строку... На этом шаманский ретуал закончен.
ЗЫ: Вот почему я не использую DelForEx в main KOL проекта.
ЗЗЫ: Покупайте наши шаманские бубны :) (Gandalf (c))
← →
earl Grey (2004-04-27 05:13) [9]Старый шаман знает как правильно в бубен стучать. Ж%)
Даже DelForEx на моей машине увидел.
Спасибо.
← →
Gandalf © (2004-04-28 12:59) [10]Потому и шаман ;) Незачто...
← →
nester © (2004-04-29 03:07) [11]А что такое DelForEx ?
← →
Gandalf © (2004-04-29 23:10) [12]1) Форматор исходников.
2) А google не гугл? :)
Страницы: 1 вся ветка
Текущий архив: 2004.11.28;
Скачать: CL | DM;
Память: 0.48 MB
Время: 0.039 c