【发布时间】:2009-09-03 20:58:06
【问题描述】:
以下代码在 Delphi 2007 中有效,但在 Delphi 2010 中出现此错误:
---------------------------
Error
---------------------------
Cannot load oci.dll library (error code 127).
The oci.dll library may be missing from the system path
or you may have an incompatible version of the
library installed.
---------------------------
OK Details >>
---------------------------
当我将“已连接”设置为“真”时引发异常。
我尝试将“oci.dll”的副本与 .exe 文件放在同一个文件夹中,但我得到了相同的消息。
在使用表单设计器和可见的 TSQLConnection 组件时,我也会收到此消息。
有什么想法吗?
function TDBExpressConnector.GetConnection(username, password, servername: string) : TSQLConnection;
begin
//take a username, password, and server
//return a connected TSQLConnection
try
FSqlDB := TSQLConnection.Create(nil);
with FSqlDB do begin
Connected := False;
DriverName := 'Oracle';
GetDriverFunc := 'getSQLDriverORACLE';
KeepConnection := True;
LibraryName := 'dbxora30.dll';
ConnectionName := 'OracleConnection';;
Params.Clear;
Params.Add('DriverName=Oracle');
Params.Add('DataBase=' + servername);
Params.Add('User_Name=' + username);
Params.Add('Password=' + password);
Params.Add('RowsetSize=20');
Params.Add('BlobSize=-1');
Params.Add('ErrorResourceFile=');
Params.Add('LocaleCode=0000');
Params.Add('Oracle TransIsolation=ReadCommited');
Params.Add('OS Authentication=False');
Params.Add('Multiple Transaction=False');
Params.Add('Trim Char=False');
Params.Add('Decimal Separator=.');
LoginPrompt := False;
Connected := True;
end;
Result := FSqlDB;
except on e:Exception do
raise;
end; //try-except
end;
【问题讨论】:
标签: delphi delphi-2010 dbexpress