Конференция "Начинающим" » Програмное закрытие формы из Dll
 
  • 206196131 © (29.03.08 20:05) [0]
    есть приложение оно подгружает dll
    в dll  2 формы, загружается сразу форма1

    после разных всяких проверок либо открывается форма2 либо не открыватся.

       в родительском окне    
       Application.CreateForm(Tform1,form1);    

    в form1

    if (что с чемто = 1) then
       Application.CreateForm(Tform2,form2)
    else
       form1.close;

    form1.close вылетает по access  violation at address 12345678 in module my.dll

    при этом если закрываеть
      form1 крестиком то никаких  проблем....
  • Сергей М. © (29.03.08 20:17) [1]

    >    в родительском окне    


    Что за зверь ?
  • 206196131 © (29.03.08 20:22) [2]
    обычное fsMDIForm все остальные окна fsMDIChild
  • Сергей М. © (29.03.08 20:28) [3]
    Т.е. ты пытаешься в dll-коде закрыть форму, код которой находится в хост-проекте и которая там же и создается, так ?
  • 206196131 © (29.03.08 20:34) [4]
    типа того если парваильно поняли друг друга,
    и родиделской формы я выхываю форму1  из dll  в свою очередь
    форму1  вызывает форму2 и дожна закрыться
    но закрытие не получается
  • trubin © (29.03.08 20:37) [5]

    > типа того если парваильно поняли друг друга,
    > и родиделской формы я выхываю форму1  из dll  в свою очередь
    >
    > форму1  вызывает форму2 и дожна закрыться
    > но закрытие не получается


    Пытался сосчитать орфографические ошибки и не смог - переполнение стека :)))
  • Сергей М. © (29.03.08 20:37) [6]
    Приложение и dll используют ран-тайм пакеты ?
  • 206196131 © (29.03.08 20:42) [7]

    > Приложение и dll используют ран-тайм пакеты ?


    что имеете виду под ран-тайм пакетами

      никаких пакетов я неиспользую если правильно понял
  • Сергей М. © (29.03.08 20:43) [8]

    > что имеете виду под ран-тайм пакетами


    В оциях сборки в свойствах проекта крыжик "Build with run-time packages" я имею ввиду
  • 206196131 © (29.03.08 20:44) [9]
    trubin  ты бы по делу чемто помог когда стек освободишь ))
  • 206196131 © (29.03.08 20:45) [10]
    сейчас посмотрю, специально я туда на лазил
  • Сергей М. © (29.03.08 20:46) [11]

    > 206196131 ©   (29.03.08 20:44) [9]


    Формы в dll - блажь вообще.
    Для озабоченных этим придуманы bpl.
  • 206196131 © (29.03.08 20:46) [12]
    нет его там, как по умолчанию было так и осталось
  • Сергей М. © (29.03.08 20:47) [13]

    > специально я туда на лазил


    Зачем же ты полез со своими формами в dll, если не в курсе крайне важных при этом вещей ?
  • 206196131 © (29.03.08 20:48) [14]
    это отдельный разговор Формы в dll ))
  • Сергей М. © (29.03.08 20:48) [15]

    > нет его там


    Плохо.
  • 206196131 © (29.03.08 20:51) [16]
    полез из соображени  таких
     в случае каких либо изменений в модуле просто менять  dll  файл
    при этом не трогать основной проект

    (чуствую сейчас опять начнется война идиологии)
  • Сергей М. © (29.03.08 20:51) [17]

    > это отдельный разговор Формы в dll


    Ты не оригинален.
    До тебя в форуме уже туева туча кулибиных пыталась на полном серьезе доказать серьезность этого отдельного разговора)
    И, смею заметить, все они получали одними и теми же граблями по своим кулибинским лбам)
  • Германн © (29.03.08 20:55) [18]

    > война идиологии

    Забавная очепятка.
  • Сергей М. © (29.03.08 20:55) [19]

    > в случае каких либо изменений в модуле просто менять  dll
    >  файл


    На здоровье, я не против)

    Но нужно четкое, а не поверхностное понимание работы внутренних механизмов Делфи.
 
Конференция "Начинающим" » Програмное закрытие формы из Dll
Есть новые Нет новых   [134434   +26][b:0][p:0.001]