Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 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.5 MB
Время: 0.042 c
3-1099288220
NewDelpher
2004-11-01 08:50
2004.11.28
Нет соединения с MS SQL-2000


1-1100624643
TSoftman
2004-11-16 20:04
2004.11.28
Копирование файлов с визуализацией


3-1098629484
sw
2004-10-24 18:51
2004.11.28
Выбор сервера БД?


3-1098955195
ceval
2004-10-28 13:19
2004.11.28
Подскажите с вычислеемым полем


3-1099387747
malamba
2004-11-02 12:29
2004.11.28
создание автосчетчика в базе посредство SQL