![]() |
|
|
![]()
|
|
| mrKoddy |
|
||||||||
|
Новичок Профиль Группа: Участник Сообщений: 23 Регистрация: 3.6.2005 Репутация: нет Всего: нет |
А можно поподробнее, как это сделать? Допустим про
я имею понятие.
Я не говорил, что определил.Просто прога вываливается и все.
Смотрите самое начало моего поста. Это сообщение отредактировал(а) mrKoddy - 8.6.2005, 19:52 |
||||||||
|
|||||||||
| Vyacheslav |
|
||||||||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 2124 Регистрация: 25.3.2002 Где: Москва Репутация: 47 Всего: 59 |
Извините, но я прочитав Ваше пост так и не нашел проблемы, которая возникает при создании обработчиков. Нельзя поподробнее для тупых
А кто мешает воспользоваться дебагером для выявления причин?
Ну как я понимаю на интересует вариант, когда мы не имеем хидера в exe? Ну например так. Мы знаем, что у формы из dll (formdll) есть кнопка с именем Button1. Находим эту кнопку
-------------------- С уважением, Вячеслав Ермолаев |
||||||||
|
|||||||||
| mrKoddy |
|
||||||||||
|
Новичок Профиль Группа: Участник Сообщений: 23 Регистрация: 3.6.2005 Репутация: нет Всего: нет |
Ну вообще-то я имел ввиду сообщение от 8.6.2005, 19:43
При вызове функции CreateMyForm(NULL) появляется:
В принципе логично, т.к. объявление TForm2 (TForm2 *Form2) у меня есть только в DLL. Т.е. все сделано по аналогии как в и в ехе.
Опять 25.Ну не хочу я обработчик MyNewClick в ехе-модуле. |
||||||||||
|
|||||||||||
| Vyacheslav |
|
||||||||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 2124 Регистрация: 25.3.2002 Где: Москва Репутация: 47 Всего: 59 |
Ну до чего уж Вы упрямый
Я Вам показал в качестве примера на Ваше
Да если не хотите, не делайте. Мы тут развели целую дискуссию вокруг проблемы, которой нет.
Да не логично это. Иначе у меня да и у всех ни одна программа не работала. Сама то форма в dll c помощью дизайнера создана или Вы просто ручками интерфейс набили? Я еще раз говорю - код в студию. Можете вот это в качестве примера хотя бы посмотреть. Там MDI окно главное и MDI-child окно и модальное в dll. Статья в принципе об использовании template, но пример к ней посмотреть можно http://bcdev.narod.ru/Articles/dll_template.htm -------------------- С уважением, Вячеслав Ермолаев |
||||||||
|
|||||||||
| mrKoddy |
|
||||||||||||||
|
Новичок Профиль Группа: Участник Сообщений: 23 Регистрация: 3.6.2005 Репутация: нет Всего: нет |
Ручками.
Нет.
Ни вопрос. Код DLL (unit1.cpp)
Код DLL(unit1h)
Код в ехе (unit1.h)
Код в ехе (unit1.cpp)
Правда он не совсем рабочий. |
||||||||||||||
|
|||||||||||||||
| Vyacheslav |
|
|||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 2124 Регистрация: 25.3.2002 Где: Москва Репутация: 47 Всего: 59 |
То есть в dll у Вас dfm-файла для формы нет? Тогда все то же самое, только предварительно добавьте форму в dll через меню File->New->Form . Надеюсь и вопрос как обработчики в dll создавать отпадет сам собой -------------------- С уважением, Вячеслав Ермолаев |
|||
|
||||
| mrKoddy |
|
||||||
|
Новичок Профиль Группа: Участник Сообщений: 23 Регистрация: 3.6.2005 Репутация: нет Всего: нет |
Нет.
эээ..а зачем? Ее "просто так" так создать нельзя?
Я тоже надеюсь. |
||||||
|
|||||||
| Любитель |
|
|||
|
Программист-романтик ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 3645 Регистрация: 21.5.2005 Где: Воронеж Репутация: нет Всего: 92 |
Ну так dfm тебе все равно нужен, если в dll у тебя будет форма. |
|||
|
||||
| mrKoddy |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 23 Регистрация: 3.6.2005 Репутация: нет Всего: нет |
Ну если я таким же образом создаю форму в ехе-шнике, то я без dfm обхожусь спокойно.К тому же сколько будет у меня форм, мне вообще-то не известно. Поэтому вариант с dfm отпадает. |
|||
|
||||
| Любитель |
|
|||
|
Программист-романтик ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 3645 Регистрация: 21.5.2005 Где: Воронеж Репутация: нет Всего: 92 |
Ну так тогда, насколько я знаю, ты не сможешь из dll экспортировать именно форму. Или я не прав?
|
|||
|
||||
| Vyacheslav |
|
||||||||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 2124 Регистрация: 25.3.2002 Где: Москва Репутация: 47 Всего: 59 |
СЧАС ВЗОРВУСЬ. Во-первых, есть класс формы + dfm - это не есть объект(сама форма). Сколько экземляров этих форм будет - это зависит от программиста. Как количество форм(объектов) завит от dfm? Я уже давал код при котором, создастся столько форм, сколько раз будет вызвано это. И когда это давал, то предполагал, что TForm2 имеет dfm
А вот этот код будет всегда изпользовать только однажы созданную форму
Каким образом dfm здесь может регламентировать количество создаваемых форм? Во-вторых, Вы делая некоторые утверждения, упускаете совсем для Вас "малозначительные" факты, и тем самым вводите людей в заблужение Я уверен, что Вы не " таким же образом" создаете форму в ехе-шнике. Если у Вас она без dfm, то Вы скорее всего используете непосредственно класс TForm или используете конструктор типа TForm1(TComponent*, int). В dll же Вы пытаетесь использовать класс, производный от TForm. Разницу чувствуете? К тому же это Ваш код или не Ваш ?
В-третьих. Вам удалось сделать наконец такую простейшую вещь как экспорт формы из dll?Думаю, что нет. И это несмотря на вполне профессиональные советы двух форумов, которые Вам дают уже на протяжении полумесяца. Я еще раз повторюсь, что Вы для себя сложили какую-то несоответствующую реалиям картину "мира" и в этих рамках пытаетесь что то сделать. То , что не укладывается в вашу картинку, просто отбрасываете. Выглядит со стороны это так Вы: Как сделать это? Вам: Так-то и так-то Вы: Я так делать не буду, потому что ( далее следуют абсолютно бесмысленные доводы) И опять в по кругу И если мы не выйдем их этого круга, плодотворная работа у нас с Вами врядли получится. -------------------- С уважением, Вячеслав Ермолаев |
||||||||
|
|||||||||
| mrKoddy |
|
||||||||||||||
|
Новичок Профиль Группа: Участник Сообщений: 23 Регистрация: 3.6.2005 Репутация: нет Всего: нет |
Значит я не правильно выразился вначале.
Да, извеняюсь, поторопился.
Мой.
Да.
Первым способом удалось, вторым нет. Причина - отсутствие ресурса TForm2.
Да, есть у меня такое. |
||||||||||||||
|
|||||||||||||||
![]()
|
| Правила форума "С++ Builder" | |
|
|
Запрещается! 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Rrader. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | C++ Builder | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |