OracleConnection抛出空exception

我正在尝试从我的新PC连接到我的Oracle数据库。 我刚刚安装了Visual Studio和ODAC。 但是,当我尝试做一个简单的连接我得到一个空消息,空源,空数的exception,只是错误代码是-2147467259

OracleConnection Prueba; Prueba = new OracleConnection("Data Source=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=XXX.XXX.XXX.XXX)(PORT=1521)))(CONNECT_DATA=(SERVER=DEDICATED)(SERVICE_NAME=XXXX)));User Id=XXX;Password=XXX;Pooling=true;Max Pool Size=10;Min Pool Size=1"); Prueba.Open(); 

例外细节
这是Exception.ToString()代码:

“在Oracle.DataAccess.Client.OracleException.HandleErrorHelper(Int32 errCode,OracleConnection conn,IntPtr opsErrCtx,OpoSqlValCtx * pOpoSqlValCtx,Object src,String procedure)中的Oracle.DataAccess.Client.OracleException
在Oracle.DataAccess.Client.OracleException.HandleError(Int32 errCode,OracleConnection conn,IntPtr opsErrCtx,Object src)
在Oracle.DataAccess.Client.OracleConnection.Open()
at OracleConnectionS.Program.Main(String [] args)在C:\ Users \ Simetri \ Documents \ Visual Studio 2010 \ Projects \ OracleConnection \ OracleConnection \ Program.cs:第19行“

对于为什么会发生这种情况的任何想法?

UPDATE

如果我以管理员身份运行visual studio,我就不会得到exception,我可以很好地连接到数据库。

我尝试向Oracle Directory C:\Oracle提供FULL CONTROL权限。 但是,如果我以正常方式运行Visual Studio(而不是管理员),我会继续获得exception。

背景资料
– 我正在使用Windows 7 64位
– Visual Studio 2010
– 我可以通过SQL * PLUS连接

因此,在安装所有类型的ODAC并搜索与此相关的每个post之后。

最后,32位版本的清洁安装是解决方案。

  • 首先,您需要取消所有已安装的其他oracle客户端。
  • 之后,查找您想要的任何ODAC版本(如果可行,请查看最新版本)但请务必下载32位版本。

为什么?

好的是与开发Visual Studio的版本相关的东西。如果您正在开发一个控制台应用程序,您将对客户端版本没有问题,但如果您使用的是Web项目,那么您肯定需要32位版本。

  • 最后确保Visual Studio中目标平台的所有项目都是“32位”
  • 并引用刚刚安装的新Oracle.DataAccess.dll

请尝试将连接字符串重新格式化为此表单,并查看其工作原理

  

如果您使用的客户端是“即时客户端”,那么通过将一些Oracle-DLL复制到您的解决方案中可能会更好 – 为此,请参阅此内容 。

如果可能,我会建议使用不同的.NET提供程序……根据我的经验,大多数商业提供程序比Oracle .NET提供程序要少得多 – 请参阅此处的SO 。