Вниз
Скачать: CL | DM;

помогите разобраться с глюком.   Найти похожие ветки 

 
Starkom   (2002-10-02 11:26) [0]

был проект - простая прилада для системы, написанный на дельфях. Запускался, как простой екзешник. Начали разрабатывать новую систему и эту приладу понадобилось встроить в код системы. Так как новая система пишется на Билдере, приладу засунули в dll.
procedure RunGen();
begin
if ConnectDataBase() then
begin
MainForm:=TMainForm.Create(Application);
MainForm.ShowModal();
MainForm.Release;
end;
end;

exports
RunGen;

вместо
if ConnectDataBase() then
begin
Application.CreateForm(TMainForm, MainForm);
Application.Run;
end;

вызов прилады(всякие проверки опущены) -
HINSTANCE Dll = LoadLibrary("ProjectDLL.dll");
void __fastcall (__import *Generator)(void);
Generator = (void __fastcall (__import *)(void)) GetProcAddress(Dll,"RunGen");
Generator();
FreeLibrary(Dll);

Проблема в том, что при запуске прилады из-под системы,ее последующем запуске и закрытии MainForm - система валится.
Понять почему такое несчастье происходит я не могу. Помогите, пожайлуста!!!


 
Smithson ©   (2002-10-02 11:50) [1]

Fast call ли она?


 
Starkom   (2002-10-02 11:56) [2]

так а в паскале же по умолчанию все fastcall


 
Starkom   (2002-10-02 12:17) [3]

хмм, вообще закомментил тело функции RunGen - при вызове из Билдерного проекта все равно валится.



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

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.015 c
3-31636
R. D.
2002-09-19 14:59
2002.10.10
BDE-Paradox


3-31586
Pavel Denisov
2002-09-18 10:42
2002.10.10
DBGrid скроллинг


1-31796
Chlavik
2002-09-27 23:49
2002.10.10
Сохранение Масива. Продолжение диалога с Юрием ЗОТОВЫМ.......


14-31952
lipskiy
2002-09-13 23:25
2002.10.10
Программная модель работы железа. Тип с двумя полями данных.


3-31616
sasha123
2002-09-19 11:37
2002.10.10
Знающие люди, как программно создать Lookup поле




   Наверх