搜的 应该是注册表获取路径 function funGetOraclNetPath():string; var reg : TRegistry; ///注册表对象 begin Result :=''; ///如果没有的话,返回空值 reg :=Tregistry.Create; ///生成注册表对象 with reg do begin RootKey := HKEY_LOCAL_MACHINE; if OpenKey('\SOFTWARE\ORACLE\KEY_OraDb10g_home1',False) then ///判断是否为服务器端,如果是就打开注册表 begin Result := ReadString('ORACLE_HOME')+'\NETWORK\ADMIN\tnsnames.ora'; ///得到orcal数据库的Net配置文件位置 end else if OpenKey('\SOFTWARE\ORACLE\KEY_OraClient10g_home1',False) then ///判断是否为客户端,如果是就打开注册表 begin Result := ReadString('ORACLE_HOME')+'\NETWORK\ADMIN\tnsnames.ora'; ///得到orcal数据库的Net配置文件位置 end else showmessage('没有安装数据库客户端或服务器端,请安装后使用!'); end; reg.Free; ///释放注册表对象 end;
function funGetOraclNetPath():string;
var
reg : TRegistry; ///注册表对象
begin
Result :=''; ///如果没有的话,返回空值
reg :=Tregistry.Create; ///生成注册表对象
with reg do
begin
RootKey := HKEY_LOCAL_MACHINE;
if OpenKey('\SOFTWARE\ORACLE\KEY_OraDb10g_home1',False) then
///判断是否为服务器端,如果是就打开注册表
begin
Result := ReadString('ORACLE_HOME')+'\NETWORK\ADMIN\tnsnames.ora';
///得到orcal数据库的Net配置文件位置
end
else if OpenKey('\SOFTWARE\ORACLE\KEY_OraClient10g_home1',False) then
///判断是否为客户端,如果是就打开注册表
begin
Result := ReadString('ORACLE_HOME')+'\NETWORK\ADMIN\tnsnames.ora';
///得到orcal数据库的Net配置文件位置
end
else
showmessage('没有安装数据库客户端或服务器端,请安装后使用!');
end;
reg.Free;
///释放注册表对象
end;