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

Вниз

глюк DLL под XP   Найти похожие ветки 

 
виктор   (2003-11-06 03:13) [0]

Мастера помогите, в программе из одной Dll вызывается другая. Под
W"98 работает без проблем, а вот в ХР выдает ошыбку:"Не найден дискриптор окна. OSExceptionError". Что это такое и как с ним бороться. Заранее спасибо.


 
Vorobyev Sergey ©   (2003-11-06 07:13) [1]

DLL или программа использует потоки?


 
viktor   (2003-11-06 22:50) [2]

Нет.


 
Юрий Федоров ©   (2003-11-06 23:24) [3]

на LoadLibrary ?
Приводите наконец более подробное описапние проблемы, с фрагментами кода, со значениями переменных, которые получены в run - time, а то кроме как ответа "ошибка в 17 строке" ничего не увидите, тут телепатов нет


 
vvh   (2003-11-06 23:37) [4]

Эта DLL загружается из другой. И в одной, и во второй открываются модальные окна.
procedure TfSpravBank.BitBtn2Click(Sender: TObject);
begin
hLib:=LoadLibrary("bnktype.dll");
if hLib<32 then
begin
ShowMessage("Error load DLL");
exit;
end;
CreateBankTypeDlg:=TCreateBankTypeDlg(GetProcAddress(hLib,"CreateBankTypeDlg"));
ShowBankTypeForm:=TShowBankTypeForm(GetProcAddress(hLib,"ShowBankTypeForm"));
BankType:=TBankType.Create;
CreateBankTypeDlg(Self.Handle,BankType);
ShowBankTypeForm(True);
FreeLibrary(hLib);
end;


 
Palladin ©   (2003-11-06 23:48) [5]

А... э...
А как используются адреса переданные в функции?


 
vvh   (2003-11-06 23:50) [6]

Например так:
procedure CreateBankTypeDlg(Handle:THandle;P:Pointer);
begin
Application.Handle:=Handle;
fBankType:=TfBankType.Create(Application);
if Assigned(P) then fBankType.BankType:=TBankType(P);
end;

procedure ShowBankTypeForm(const DlgMode:Boolean);
begin
with fBankType do
begin
if DlgMode then
begin
Caption:="Новый банк";
// tBank.Append;
ShowModal;
if ModalResult=mrOK then InsElemet;
end
else
begin
if GetElemet then
begin
// tBank.Edit;
ShowModal;
if ModalResult=mrOK then UpdElemet;
end
else ShowMessage("Ошибка извлечения данных.");
end;
Free;
end;
end;



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

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

Наверх




Память: 0.48 MB
Время: 0.031 c
7-56943
Любитель
2003-09-09 09:01
2003.11.17
Господа как программно изменить время двойного клика


3-56494
smu
2003-10-28 11:10
2003.11.17
Здравствуйте. Как правильно работать с транзакциями в firebird?


1-56595
Марат
2003-11-06 09:32
2003.11.17
Edit


3-56443
Kinder
2003-10-29 18:21
2003.11.17
BLOB в Access


3-56499
stud
2003-10-28 10:40
2003.11.17
вопрос