Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.08.21;
Скачать: CL | DM;

Вниз

DLL , MDI и TAction   Найти похожие ветки 

 
Tiny   (2003-08-07 10:38) [0]

Люди! Подскажите plz! Есть прога(MDI) есть DDL с MDIChild формой
Все отлично работает - кроме одного(пока :-) : В проге есть меню "Окна" (Standard Action) (типа "Выровнять","Каскадом" и т.д.). Вот при попытке просто открыть это меню прога вылетает с AV.
Другими словами - не работает TAction c MDI из DLL :-((((
Как с этим бороться??


 
Tiny   (2003-08-07 10:58) [1]

Ну подскажите кто-нибудь!


 
Tiny   (2003-08-07 11:32) [2]

алллееее! ((


 
Skier ©   (2003-08-07 11:36) [3]


> Вот при попытке просто открыть это меню прога вылетает с
> AV.

Какое AV ? Конкретно.


 
Tiny   (2003-08-07 11:48) [4]

AV оно и есть AV:
access violation at 0x00000072:read of address 0x00000072

Что тебе это дало?? (

Я как понимаю MDIForm видит что есть Child но не может найти ActiveMDIForm....или как? и как это лечить?

Или к примеру просто как максимизировать mdi форму в длл из основного приложения (не делая экспортируемой ф-ии)?


 
Tiny   (2003-08-07 12:35) [5]

Доктор,меня все игнорируют!


 
Tiny   (2003-08-07 14:28) [6]

Злые вы, уйду я от вас!...(


 
panov ©   (2003-08-07 15:05) [7]

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


 
Tiny   (2003-08-07 15:54) [8]

Да нет...уже дело даже не в программе (вылетает Toolbar2000...с обымным меню ошибка не появляется...)

Вопрос уже по другому звучит : почему основное MDI приложение не видет MDIChild формы из dll
то еть можно загрузить 20 dll (20 форм) а в приложении MDIChildcount все равно = 0
Как сделать чтоб приложение видело формы??


 
panov ©   (2003-08-07 16:47) [9]

>Tiny (07.08.03 15:54)

Так ты и не хочешь показать свой секретный код...


 
dez ©   (2003-08-07 17:39) [10]

убери оттуда это меню и все


 
Tiny   (2003-08-08 06:33) [11]

panov © (07.08.03 16:47)
да нету там никакого кода практически :

DLL

procedure Init(ExeApp:TApplication; DB:TIBDatabase; CallbackHndl:Pointer);export;stdcall;
begin

if Assigned(ExeApp) then
begin
DllApp:=Application;
Application:=ExeApp;

end;
if Assigned(DB) then
Database:=DB;

Form1:=TForm1.Create(Application.MainForm);
Form1.Show;
if Assigned(CallbackHndl) then
CbHndl:=TCallbackHandler(CallbackHndl);

end;


EXE


DllH:=LoadLibrary(PChar(FileName));
@GetPluginInfo:=GetProcAddress(DllH,PLUGIN_GETINFO);
if @GetPluginInfo = nil then
raise ENotPlugin.Create("");
Info:=GetPluginInfo;

@InitPlugin:=GetProcAddress(DllH,PLUGIN_INIT_BASE);
if @InitPlugin = nil then
raise ENotPlugin.Create("");
( Application,MainFrm.Database,@CallbackHandler)
panov © (07.08.03 16:47)
да нету там никакого кода практически :

DLL

procedure Init(ExeApp:TApplication; DB:TIBDatabase; CallbackHndl:Pointer);export;stdcall;
begin

if Assigned(ExeApp) then
begin
DllApp:=Application;
Application:=ExeApp;

end;
if Assigned(DB) then
Database:=DB;

Form1:=TForm1.Create(Application.MainForm);
Form1.Show;
if Assigned(CallbackHndl) then
CbHndl:=TCallbackHandler(CallbackHndl);

end;


EXE


DllH:=LoadLibrary(PChar(FileName));
@GetPluginInfo:=GetProcAddress(DllH,PLUGIN_GETINFO);
if @GetPluginInfo = nil then
raise ENotPlugin.Create("");
Info:=GetPluginInfo;

@InitPlugin:=GetProcAddress(DllH,PLUGIN_INIT_BASE);
if @InitPlugin = nil then
raise ENotPlugin.Create("");
InitPlugin(Application,MainFrm.Database,@CallbackHandler);



Код урезаный там на самом деле больше но это к делу не относится...

dez © (07.08.03 17:39)
убери оттуда это меню и все

Дай мне нормальное красивое меню и тулбар...


 
Tiny   (2003-08-08 12:56) [12]

Так никто и не подскажет??


 
panov ©   (2003-08-08 13:13) [13]

Application в DLL и основной программе не есть одинаковые величины.

Попробуй этом направлении посмотреть.


 
Tiny   (2003-08-08 13:57) [14]


> panov © (08.08.03 13:13)
> Application в DLL и основной программе не есть одинаковые
> величины.
>
> Попробуй этом направлении посмотреть.

для того и сделал это :

if Assigned(ExeApp) then
begin
DllApp:=Application;
Application:=ExeApp;
end;

не помогает...

Что еще можете посоветовать...??



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

Текущий архив: 2003.08.21;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.014 c
14-68469
KILLER_ABV
2003-08-06 12:57
2003.08.21
Как в DELPHI проиграть MP3 файл?


14-68494
avoitenko
2003-08-05 13:26
2003.08.21
ищу компонент


14-68461
Александр_ИСТ
2003-08-04 13:55
2003.08.21
Пишу программу рисования графика по точкам, и никак не получается


14-68541
Халява
2003-08-04 23:41
2003.08.21
WebBrowser


4-68584
LOX
2003-06-18 18:18
2003.08.21
Позиция курсора в Tmemo.