如何以编程方式检查oracle版本

时间:2012-10-19 11:48:54

标签: .net oracle

我有一个小的.NET 3.5程序在尝试连接到Oracle数据库时会出现错误,如果它无法访问Oracle client DLL oci.dlloracle DLL版本太旧。消息是:

System.Data.OracleClient requires Oracle client software version 8.1.7 or greater.

但是,该异常会导致程序崩溃。因此,我希望在程序启动时进行测试,并在需要时正常终止它,并通过消息通知用户他需要update/install/fix安装Oracle Client。我已经在堆栈跟踪中看到方法System.Data.OracleClient.OCI.DetermineClientVersion(),但似乎不公开。有什么想法吗?

1 个答案:

答案 0 :(得分:1)

不幸的是,例行程序不公开。你可能会破解你的方式。否则此页面包含一些替代方案;

https://forums.oracle.com/forums/thread.jspa?threadID=1089440&tstart=15

我特别喜欢读取TNSPING.EXE二进制文件并从中确定ClientVersion的那个; - )