首先说明一下,困扰了我好久的一个问题,终于解决了,记录一下,以备后用!顺便给遇到同样问题的同学,提供一个参考!
最近用C#写了个Winform的程序,其中要访问Oracle数据库,访问的Oracle安装版本是oracle 9i,在VS2012本地调试运行,好好的,一切正常,但是当我用Inno 5打包软件打包后,安装打包后的exe成功后,一登录就报错,错误信息如下所示:
“System.Data.OracleClient.OracleException (0x80131938): Error while trying to retrieve text for error ORA-12154”
然后就上网找解决方案,有人说是tnsnames.ora的权限问题,还有人说是tnsnames.ora内容配置的问题,还有人说是环境变量ORACLE_HOME的问题,甚至还有人说是oracle的bin权限问题,然而,我一一检查后发现都不是,偶然间看到网上有人说oracle不识别环境变量路径中的括号"("和")",我突然受到启发,当然我的环境变量配置是没有问题的,而是我运行exe安装程序时,每次安装的路径中都有Program Files (x86),为了保险起见,我重新安装打包后的exe时,路径中既不出现空格,也不出现括号,然后安装成功后运行程序时就一切OK了!!!