Переглянути джерело

* Patch from LaCo to fix bug #25118

git-svn-id: trunk@25733 -
michael 11 роки тому
батько
коміт
b1b8cc2542
1 змінених файлів з 42 додано та 0 видалено
  1. 42 0
      packages/fcl-db/src/sqldb/oracle/oracleconnection.pp

+ 42 - 0
packages/fcl-db/src/sqldb/oracle/oracleconnection.pp

@@ -94,10 +94,16 @@ type
     constructor Create(AOwner : TComponent); override;
   end;
 
+  { TOracleConnectionDef }
+
   TOracleConnectionDef = Class(TConnectionDef)
     Class Function TypeName : String; override;
     Class Function ConnectionClass : TSQLConnectionClass; override;
     Class Function Description : String; override;
+    Class Function DefaultLibraryName : String; override;
+    Class Function LoadFunction : TLibraryLoadFunction; override;
+    Class Function UnLoadFunction : TLibraryUnLoadFunction; override;
+    Class Function LoadedLibraryName: string; override;
   end;
 
 implementation
@@ -1058,6 +1064,42 @@ begin
   Result:='Connect to an Oracle database directly via the client library';
 end;
 
+class function TOracleConnectionDef.DefaultLibraryName: String;
+begin
+  {$IfDef LinkDynamically}
+  Result:=ocilib;
+  {$else}
+  Result:='';
+  {$endif}
+end;
+
+class function TOracleConnectionDef.LoadFunction: TLibraryLoadFunction;
+begin
+  {$IfDef LinkDynamically}
+  Result:=@InitialiseOCI;
+  {$else}
+  Result:=Nil;
+  {$endif}
+end;
+
+class function TOracleConnectionDef.UnLoadFunction: TLibraryUnLoadFunction;
+begin
+  {$IfDef LinkDynamically}
+  Result:=@ReleaseOCI;
+  {$else}
+  Result:=Nil;
+  {$endif}
+end;
+
+class function TOracleConnectionDef.LoadedLibraryName: string;
+begin
+  {$IfDef LinkDynamically}
+  Result:=OCILoadedLibrary;
+  {$else}
+  Result:='';
+  {$endif}
+end;
+
 { TOracleTrans }
 
 destructor TOracleTrans.Destroy();