2013-10-15 58 views
4

如何从32位应用程序连接到64位系统DSN?我得到的错误: ERROR [IM014] [微软] [ODBC驱动程序管理器]指定的DSN包含驱动程序和应用程序之间的结构不匹配如何将我的32位应用程序连接到64位系统DSN?

OdbcConnection con = new OdbcConnection(); 
con.ConnectionString = string.Format("DSN={0}", _dsnName); 

我见过很多,人们使用64位的职位连接到32有没有办法从32到64,而无需使用32位应用重新定义您的ODBC连接? c:\ windows \ syswow64 \ odbcad32.exe

+4

不。还有,DSN是一场噩梦,我建议完全避免使用它们。 IHMO你应该尽量不要求用户进行系统更改以使用你的应用程序。 – Kittoes0124

+1

你试图连接到什么数据源? –

回答

0

如果您可以考虑编译您的应用程序的任何CPU将允许它运行为64或32位应用程序取决于它运行的硬件。

关于比特性差异的非常好的详细文章,请参阅Scott Hanselman的blog post

+1

在Visual Studio 2012中有一个选项可以选择32位,取消选中默认为64位。编译它在32位并不能解决问题,但很好的猜测。 – Pat

相关问题