odac version 6.10 & 6.20, Delphi 5 Update Pack 1
I use unit OdacVcl in two OCX.
If I compile both OCX without package (vcl50.bpl) all work fine.
If I compile both OCX with package (vcl50.bpl, but without odac50.bpl) - I get error:
Project ... raised exception class EFilerError with message 'A class named TCursorField alredy exists'.
I suggest that error in unit Ora.pas (procedure RegisterFieldClasses).
[You check Delphi variable IsLibrary in order to run register class single. But this variable can be False in OCX compiled with package]
Bug with package
Suggest this bag can be Delphi 5 specific
************ TestDll.dpr ********************
library TestDll;
uses Ora;
begin
end.
************ TestExe.dpr ********************
program TestExe;
uses Windows, Ora;
begin
LoadLibrary('TestDll.dll');
end.
*******************************************
In files TestExe.dof and TestDll.dof must be this values
[Directories]
Packages=Vcl50
UsePackages=1
************ TestDll.dpr ********************
library TestDll;
uses Ora;
begin
end.
************ TestExe.dpr ********************
program TestExe;
uses Windows, Ora;
begin
LoadLibrary('TestDll.dll');
end.
*******************************************
In files TestExe.dof and TestDll.dof must be this values
[Directories]
Packages=Vcl50
UsePackages=1
This is known problem that the IsLibrary variable is False when a DLL is built with runtime packages.
But we could not reproduce the error 'A class named TCursorField already exists'. Please send to odac*crlab*com a complete small sample that demonstrates the problem, including script to create server objects.
But we could not reproduce the error 'A class named TCursorField already exists'. Please send to odac*crlab*com a complete small sample that demonstrates the problem, including script to create server objects.