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

Вниз

подключаю bpl   Найти похожие ветки 

 
Frozen   (2006-09-07 09:10) [0]

День добрый уважаемые!
Подключаю бпл. В ее коде прописал

initialization
 if not Assigned(GetClass("TfrmEditVar")) then RegisterClass(TfrmEditVar);
finalization
 if Assigned(GetClass("TfrmEditVar")) then UnRegisterClass(TfrmEditVar);

Подгружаю:
FileName := ExtractFilePath(Application.ExeName) + "bpl\EditVar.bpl";
  try
          FPackageHandle := LoadPackage(FileName);
         if FPackageHandle = 0 then begin ShowMessage("!"); RaiseLastWin32Error();end;
       except
           ShowMessage("!!!");
       end;

       frmClass := TFormClass(GetClass("TfrmEditVar"));  - не находит класс
       if not Assigned(frmClass) then
                          begin
                        ShowMessage("DDD");  
                        Exit;
       end;
       frm := TForm(frmclass.Create(nil));
       frm.showmodal;

Подскажите!?


 
Lexer ©   (2006-09-07 10:19) [1]

Build with runtime packages?


 
Frozen   (2006-09-07 10:27) [2]

поставил
Could not create output file: VirtualTreesD7.bpl

как это лечиться?


 
Frozen   (2006-09-07 11:56) [3]

как уже сказал поставил галку Build with runtime packages.
в строке отставил один vcl
скомпилировал. запустил.
теперь сдесь
try
         FPackageHandle := LoadPackage(FileName);
        if FPackageHandle = 0 then begin ShowMessage("!"); RaiseLastWin32Error();end;
      except
          ShowMessage("!!!");
      end;

уходит в эксепшен!?
???


 
Frozen   (2006-09-07 12:12) [4]

заработало!


 
Frozen   (2006-09-07 12:30) [5]

но при закрытии приложения возникает ошибка с памятью! вот весь код главного приложения:

FileName := ExtractFilePath(Application.ExeName) + "bpl\EditVar.bpl";
       try
                 FPackageHandle := LoadPackage(FileName);
                 if FPackageHandle = 0 then begin ShowMessage("!"); RaiseLastWin32Error();end;

       except
           ShowMessage("!!!");
       end;

       frmClass := TFormClass(GetClass("TfrmEditVar"));
       if not Assigned(frmClass) then
                          begin
                            ShowMessage("DDD");
                            Exit;
end;

в чем может быть причина?



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

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

Наверх




Память: 0.48 MB
Время: 0.047 c
2-1157365340
Sherhan
2006-09-04 14:22
2006.09.24
Слежение за памятью видео карты


11-1133085383
_Simon_
2005-11-27 12:56
2006.09.24
KOL NewThreadEx( ???? )


2-1157463917
VEZ
2006-09-05 17:45
2006.09.24
Ссылка не обнуляется.


15-1157042031
Palladin
2006-08-31 20:33
2006.09.24
Опрос


4-1148039556
Elen
2006-05-19 15:52
2006.09.24
Переопределение процедур меню другой программы