我有一个小的 .NET 3.5
程序,如果它无法访问 Oracle 客户端 DLL oci.dll
或如果它在尝试连接到 Oracle 数据库时会引发错误oracle DLL
版本太旧。消息是:
System.Data.OracleClient requires Oracle client software version 8.1.7 or greater.
但是,异常导致程序崩溃。所以我想在程序启动时进行测试,并在需要时优雅地终止它,并通过一条消息通知用户他需要 update/install/fix
安装 Oracle Client
。我在堆栈跟踪中看到方法 System.Data.OracleClient.OCI.DetermineClientVersion()
但它似乎不公开。有什么想法吗?
最佳答案
不幸的是,该例程不公开。您可能会绕过它。否则,此页面包含一些替代方案;
https://forums.oracle.com/forums/thread.jspa?threadID=1089440&tstart=15
我特别喜欢读取 TNSPING.EXE 二进制文件并从中确定 ClientVersion 的那个 ;-)
关于.net - 如何以编程方式检查 oracle 版本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12973640/