![]() |
|
Модераторы: Poseidon, Snowy, bems, MetalFan |
![]()
|
|
| mrhell |
|
||||||
|
Новичок Профиль Группа: Участник Сообщений: 13 Регистрация: 23.5.2008 Репутация: нет Всего: нет |
Есть программа на Delphi 7, к ней там же был написан плагин. Плагин представляет из себя mdi - форму для работы с графикой.
Так в VCL предусмотрена как mdi форма только главная форма, то пришлось идти обходными путями - у дочерней формы изменить CreateWindowHandle
в mdi форме изменен код загрузки child форм
код создания mdi окна
Так вот, на простом примере, где тестился плагин все это работало стабильно, но когда я прикрутил его к основной программе, то при попытке открыть окно dll вываливается с ошибкой, иногда правда не вываливается, но происходит это тогда, когда главная форма, полностью закрыта mdi окном из dll, а припопытке переместить mdi форму - вываливается пресловутая ошибка, которую нельзя отловить. Что делать, может кто нибудь предложить какоенибудь решение проблемы? [code=delphi] Это сообщение отредактировал(а) mrhell - 11.9.2008, 21:43 |
||||||
|
|||||||
| Akella |
|
|||
![]() Творец ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 18485 Регистрация: 14.5.2003 Где: Корусант Репутация: 36 Всего: 329 |
А что, в плагине обязательно использовать MDI? Может можно обычную форму создавать?
|
|||
|
||||
| mrhell |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 13 Регистрация: 23.5.2008 Репутация: нет Всего: нет |
для моей задачи mdi форма была бы намного удобне, так как плагин представляет из себя редактор графики с расширинными возможностями
или что вы имели ввиду? сделать mdi форму - главную? также проблема точно в dll, так как прикрутив код плагина к исходникам приложения - я такую ошибку уже не получаю Это сообщение отредактировал(а) mrhell - 12.9.2008, 10:03 |
|||
|
||||
| mrhell |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 13 Регистрация: 23.5.2008 Репутация: нет Всего: нет |
Удалось локализовать источник - похоже Application.Mainform,
пришел к этому выводу, так как когда окно плагина полностью закрывает окно основного приложения, то никаких багов не вылезает, а когда часть окна основного попадает на отрисовку - тутже появляется ошибка попробовал сделать все это в bpl - при создании дочернего окна вываливается ошибка 1407 не удается найти класс окна, RegisterClasses() не помогает Это сообщение отредактировал(а) mrhell - 12.9.2008, 15:43 |
|||
|
||||
| mrhell |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 13 Регистрация: 23.5.2008 Репутация: нет Всего: нет |
попытался реализовать плагин в bpl — получил
ошибка 1407 не удается найти класс окна, при открытии child формы (( С dll прояснилось следующее - если убрать меню в основном приложении, то ошибок не возникает, то есть как то связано с объединением меню родителя и дочернего окна более того - меню child формы объединяется с меню формы основного приложения Это сообщение отредактировал(а) mrhell - 13.9.2008, 19:31 |
|||
|
||||
![]()
|
| Правила форума "Delphi: Общие вопросы" | |
|
|
Запрещается! 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, MetalFan, bems, Poseidon, Rrader. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Delphi: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |