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

Вниз

Runtime error на выходе KOL-приложения   Найти похожие ветки 

 
Alextp ©   (2005-10-15 20:58) [0]

Hello All,

Мой проект при закрытии дает Runtime error 216.
В чем тут может быть дело? Где-то в KOL или MCK ошибка (KOL 2.10, Delphi 4). Проект - это dll, и runtime error появляется при закрытии основного приложения.

Попытался повторить ошибку в .exe, выкинул из форм все
лишнее, выложил сюда: http://alextpp.narod.ru/files/bug_KOLTest1.rar
(распаковать в каталог C:\KOLTest1).
Закрываем первую форму по Alt-F4, затем вторую и вылезает ошибка.

В dll я вызываю формы так:
 1) FormProgress.Form.Show;
 (создается форма - в initialization модуля)
 2) NewFormOptions(FormOptions, Applet);
 with FormOptions^ do
   begin
   Form.ShowModalEx;
   if Form.ModalResult=1 then
     begin
     end;
   Form.Free;
   end;


Может быть, я как-то неправильно создаю форму или Applet в
initialization модуля? Или нельзя создавать Applet два раза?
Закомментировал его создание в Config_0.inc, все равно ошибка.
Помогите разобраться, please.

--
Alexey


 
MTsv DN   (2005-10-16 13:08) [1]

Перекомпилировал на: Delphi 7 + KOLnMCK 2.15 + KOLadd(15.10.2005). Все нормально работает и закрывается...
Размер выходного ехе-шника на 2 кБ меньше, чем у Вас в архиве...

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


 
ECM ©   (2005-10-16 13:54) [2]


> Перекомпилировал на: Delphi 7 + KOLnMCK 2.15 + KOLadd(15.
> 10.2005). Все нормально работает и закрывается...
> Размер выходного ехе-шника на 2 кБ меньше, чем у Вас в архиве.
> ..

То же самое на D6 + 2.15


 
homm ©   (2005-10-16 20:27) [3]

Я чесно сказать не разобрался из твоего вопроса где что, но для инициализации используются Config_3.inc, а для финализации Config_4.inc. Зачем тебе два аплета? Зачем ты управляеш созданием/уничтожением форм, первый раз MCK увидел чтоли, привык как в KOL все ручками?

2 ECM & MTsv DN
У меня вылетает с заменой в дебагер. (D6 + 2.15)


 
Alextp ©   (2005-10-17 01:21) [4]

Вроде разобрался, как поправить: надо не создавать Applet как
 Applet:= NewApplet("IECache");
 Applet.Hide;
 NewFormProgress(FormProgress, Applet);
а присваивать Applet-у значение первой созданной формы:
 NewFormProgress(FormProgress, nil);
 Applet:= FormProgress.Form;
Тогда вроде ошибки не возникает. Почему - непонятно.
Может быть, кому-то при написании dll пригодится.

Правда, у этого метода есть недостаток: форма FormProgress, как Applet,
будет видна в панели задач, что нежелательно. Вопрос, можно ли этого избежать?


 
Alextp ©   (2005-10-17 01:24) [5]

> Я чесно сказать не разобрался из твоего вопроса где что,
>  но для инициализации используются Config_3.inc, а для финализации
> Config_4.inc. Зачем тебе два аплета?

Мне не нужны были два апплета, я уже понял, что если я создаю аплет в коде, то компонент KOLApplet на форму класть не нужно.
Вопрос: как избежать появления главной формы (которая аплет) на панели задач?


 
homm ©   (2005-10-17 01:35) [6]

> а присваивать Applet-у значение первой созданной формы:

А оно и так между прочем аплету присваивается.

> Вопрос: как избежать появления главной формы (которая аплет) на панели задач?

Applet.Visible := false;
Если Applet и первая форма - разные объекты, то форма не скроется. Аплет для того и существует (я имею ввиду TKOLApplet и NewApplet) чтоб кнопка к конкретной форме не привязывалась.

Вы наверное первый раз на MCK проект делаете? Что-то вы все ручками наравите ненужную работу сделать.


 
Alextp ©   (2005-10-17 10:58) [7]

> Вы наверное первый раз на MCK проект делаете? Что-то вы
> все ручками наравите ненужную работу сделать.

Первый раз. А ручками приходится - вот например вижу, что для формы нет стиля SizebleToolWindow, хотя просто ToolWindow есть. И для ToolWindow игнорируются пар-ры minimizeIcon, mazimizeIcon, closeIcon. Приходится ручками править .inc файл, выставлять Result.Form.Style.


 
ECM ©   (2005-10-17 11:26) [8]


> Приходится ручками править .inc файл, выставлять Result.
> Form.Style.

А чем не устраивает традиционный способ - установить нужное значение Form.Style в FormCreate?


 
ECM ©   (2005-10-17 11:41) [9]


> ручками приходится - вот например вижу, что для формы нет
> стиля SizebleToolWindow

Так доработайте MCK самостоятельно - это не так уж сложно...:)
И не надо будет руками править... он все будет генерировать автоматически.
Подправьте, протестируйте - и исправления в мыло Владимиру...
Остальные потом пасибо скажут. :)
Разобраться с MCK всегда полезно... если будут вопросы помогу



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

Форум: "KOL";
Текущий архив: 2006.06.25;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.47 MB
Время: 0.008 c
2-1149345643
AlexanderMS
2006-06-03 18:40
2006.06.25
TFileStream.CopyFrom


15-1149253449
Новичоккк
2006-06-02 17:04
2006.06.25
Правильно ли работаю с массивом сокетов?


2-1149531201
HoBBiT.cmp
2006-06-05 22:13
2006.06.25
Матрицы


15-1149230363
ГерманнД
2006-06-02 10:39
2006.06.25
Средне-квадратичная погрешность


15-1148874779
Мурзилка
2006-05-29 07:52
2006.06.25
подправить винду :)





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский