![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
подключаю bpl
Frozen © (2006-09-07 09:10:00)День добрый уважаемые!
Подключаю бпл. В ее коде прописал
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;
Подскажите!?
Frozen (2006-09-07 12:30:00) [1]но при закрытии приложения возникает ошибка с памятью! вот весь код главного приложения:
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;
в чем может быть причина?
Frozen (2006-09-07 12:12:00) [2]заработало!
Frozen (2006-09-07 11:56:00) [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 10:27:00) [4]поставил
Could not create output file: VirtualTreesD7.bpl
как это лечиться?
Lexer (2006-09-07 10:19:00) [5]Build with runtime packages?