Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Вызов прцедуры из bpl


Страницы:   1 2

SiDimka ©   (2012-04-06 22:41:00) 

Народ, помогите плиз!!!

Прогуглил все глаза, читаю, при статической загрузке bpl - exe знет все прцедуры bpl если добавлен юнит в uses.
Создаю Форму1 - все прекрасно, загружаю bpl Форму2 - все хорошо, Вызываю процедуру из Формы1:
Форма2.процедура;    А оно мне Форма2=nil.  

Подсажите пожалуйста как правильно вызвать процедуру из bpl.


Плохиш   (2012-04-07 10:26:00) [1]

Следующий вопрос от этого будет: Печму я присваю а он не писвает?


Anatoly Podgoretsky   (2012-04-07 09:40:00) [2]

> Германн  (07.04.2012 02:18:35)  [35]

Есть надежда на третью подсказку.


Anatoly Podgoretsky   (2012-04-07 09:37:00) [3]

> SiDimka  (06.04.2012 23:54:21)  [21]

Решил методом научного тыка, тут уберем, там добавим, может ругаться
прекратит, а то что NIL не важно.


Германн   (2012-04-07 02:18:00) [4]


> Но и чайники достигая определенного уровня знаний, перестают
> быть оными.

Если они читают учебники (вообще книги/справку/msdn и т.п), то да такое бывает. Если достигать "определенного уровня" только на форумах, то такого не бывает никогда!

Но раз моя "не совсем определенная" подсказка помогла, то не все еще потеряно. :)


SiDimka   (2012-04-07 02:05:00) [5]

>Один день sniknik © + один день Сергей М. © пропали даром. :(

Но и чайники достигая определенного уровня знаний, перестают быть оными.

Еще раз ВСЕМ ОГРОМНОЕ СПАСИБО!!!


Германн   (2012-04-07 01:58:00) [6]


> День потрачен не зря - если есть резултат

Один день sniknik © + один день Сергей М. © пропали даром. :(


SiDimka   (2012-04-07 01:54:00) [7]

>Германн ©

Огромнейшее спасибо. Помогло.

"День потрачен не зря - если есть резултат!!!"


Германн   (2012-04-07 01:51:00) [8]


> И всетаки вопрос остался. Почему FUsers загруженя из bpl
> в FMain ухдит в nil

В bpl создается (если создается) форма некоторого класса. А вот ссылку на нее вы благополучно выбрасываете.


SiDimka   (2012-04-07 01:35:00) [9]

И всетаки вопрос остался. Почему FUsers загруженя из bpl в FMain ухдит в nil.


Германн   (2012-04-07 01:31:00) [10]


> Но FUsers=nil остался буду искать в че причина.
>

with TFUsers.Create(Application) do


SiDimka   (2012-04-07 01:15:00) [11]

Всем огромное спасибо все ОК подказка оказалась в (TFUsers есть, раз не "ругается", а FUsers нету.)

Не знаю каким образом но отсутствовал

var
 FUsers: TFUsers;

видать случайно, как-то удалил.  Но FUsers=nil остался буду искать в че причина.


sniknik   (2012-04-07 01:07:00) [12]

так понимаю, "реальную подсказку" из [3] ты так и не осилил... как и справку/основы по дельфям.
раз так то ветку наверное нужно закрыть, толку с нее не будет.


SiDimka   (2012-04-07 00:56:00) [13]

Может и мыль была глупая, ноя подумал, что ошибка возникла при нарушеном порядке создания проекта. Имеется ввиду, что сначала FUsers был создан в exe, а потом добавлен в bpl. Поэтому и <И ты бросился убирать, перекомпилять, зановодобавлять>


  (2012-04-07 00:07:00) [14]

Удалено модератором


Сергей М.   (2012-04-07 00:05:00) [15]


> По началу был " Access Violation ", из-за  FUsers=nil


И ты бросился убирать, перекомпилять, зановодобавлять, вместо того чтобы вникнуть почемуже собственно FUsers=nil ?


sniknik   (2012-04-07 00:03:00) [16]

> По началу был " Access Violation ", из-за  FUsers=nil
а вот тогда, был... но только, не инициализированный.


sniknik   (2012-04-07 00:02:00) [17]

> Undeclared identifier: 'FUsers'
ну, нету значит его там..., TFUsers есть, раз не "ругается", а FUsers нету.
считаешь по другому? докажи!


SiDimka   (2012-04-06 23:54:00) [18]

В основной форме

uses UUsers;

procedure TFMain.UsersClick(Sender: TObject);
begin
  with TFUsers.Create(Application) do
      ShowModal;
end;

procedure TFMain.ButtonClick(Sender: TObject);
begin
  FUsers.ToolBar.Parent := FMain.CoolBarTools;  
end;

По началу был " Access Violation ", из-за  FUsers=nil

Убрал из проекта ***.bpl, перекомпилил, добавил заново.

Теперь Build: [Error] UMain.pas(194): E2003 Undeclared identifier: 'FUsers'


Сергей М.   (2012-04-06 23:46:00) [19]


> Плохиш ©   (06.04.12 23:41) [18]
> ты долларами подавай.


По пятницам рука не поднимается)


sniknik   (2012-04-06 23:42:00) [20]

а образование как всегда высшее... и как все будет уверен, что ему здесь не правильно, и без должного уважения, отвечали...


Страницы:   1 2

Наверх

Титульная страница Поиск, карта сайта Написать письмо