win7 64位,在ODBC的DNS中对sql server配置成功,但连接失败
来源:互联网 发布:俄罗斯美女知乎 编辑:程序博客网 时间:2024/04/28 10:27
win7 64位下,在ODBC的DNS中对sql server 2008配置成功,但连接时失败;
但在32下却能连接成功。
64位下,错误提示为:Message: '[Microsoft][ODBC 驱动程序管理器] 无效的字符串或缓冲区长度'
网上查了下相关的解决方法,如下:
win2003 64位系统下ODBC连接使用 转自win2003 64位系统下ODBC连接使用
环境
一般系统部署的服务器若是windows系统,就会采用64位win2003的结构。可是我们编写的程序绝大多数都是在x86下32位cpu架构中 编译的,要正常移植到64位机器还真的是很麻烦,不仅要求应用程序是64位模式编译,还需要数据库也得是64位,iis64位,framework64 位,好在相应的厂商都提供这些支持组件。不知道有人遇到过像我这样的问题么,应用中有需要增加一个Access数据库导入功能,这就需要连接ODBC的 mdb驱动,可是Microsoft OLE DB Provider for Jet不支持64位系统,即使安装了office2007后,发现ODBC也没有任何变化,这下尴尬了。
分析
对64位系统结构进行分析。
1.c盘下有两个程序安装目录:Program Files和Program Files (x86);
2.windows文件夹下有两个目录:System32和SysWOW64;
在System32中的odbcad32.exe中没有其他驱动(这也是控制面板中ODBC直接启动的程序),但是在SysWOW64下的 odbcad32.exe却存在mdb之类的所有驱动,这说明ODBC驱动在操作系统中是存在的,只是因为运行模式导致调用的odbc程序不同,造成找不 到对应的驱动。了解到这一点,就能找到解决方案:切换64位运行模式为32位。
解决步骤
切换IIS运行模式为32位
开始→运行→cmd,运行脚本:cscript %SYSTEMDRIVE%\inetpub\adminscripts\adsutil.vbs SET W3SVC/AppPools/Enable32bitAppOnWin64 1,即可将IIS由64位切换为32位模式;若想恢复为64位模式,运行脚本:cscript %SYSTEMDRIVE%\inetpub\adminscripts\adsutil.vbs SET W3SVC/AppPools/Enable32bitAppOnWin64 0。若脚本报错,切换路径为C:\Inetpub\AdminScripts,因为adsutil.vbs文件在该路径下。
Asp.net运行模式为32位
重新注册asp.net,开始→运行→cmd,运行脚本:%SYSTEMROOT%\Microsoft.NET\Framework \v2.0.40607\aspnet_regiis.exe -i。若要注册64位,脚本为:%SYSTEMROOT%\Microsoft.NET\Framework64\v2.0.40607 \aspnet_regiis.exe -i。
重启机器,IIS即可运行32位的程序,ODBC的连接也生效了。
我按照该方法试了下:
1、“切换IIS运行模式为32位”成功;
2、“Asp.net运行模式为32位”失败,提示“该错误指示相应计算机上没有安装 IIS。请在使用此工具前安装 IIS”
就没有尝试顺着这个路往下查找以解决
但在32下却能连接成功。
64位下,错误提示为:Message: '[Microsoft][ODBC 驱动程序管理器] 无效的字符串或缓冲区长度'
网上查了下相关的解决方法,如下:
win2003 64位系统下ODBC连接使用 转自win2003 64位系统下ODBC连接使用
环境
一般系统部署的服务器若是windows系统,就会采用64位win2003的结构。可是我们编写的程序绝大多数都是在x86下32位cpu架构中 编译的,要正常移植到64位机器还真的是很麻烦,不仅要求应用程序是64位模式编译,还需要数据库也得是64位,iis64位,framework64 位,好在相应的厂商都提供这些支持组件。不知道有人遇到过像我这样的问题么,应用中有需要增加一个Access数据库导入功能,这就需要连接ODBC的 mdb驱动,可是Microsoft OLE DB Provider for Jet不支持64位系统,即使安装了office2007后,发现ODBC也没有任何变化,这下尴尬了。
分析
对64位系统结构进行分析。
1.c盘下有两个程序安装目录:Program Files和Program Files (x86);
2.windows文件夹下有两个目录:System32和SysWOW64;
在System32中的odbcad32.exe中没有其他驱动(这也是控制面板中ODBC直接启动的程序),但是在SysWOW64下的 odbcad32.exe却存在mdb之类的所有驱动,这说明ODBC驱动在操作系统中是存在的,只是因为运行模式导致调用的odbc程序不同,造成找不 到对应的驱动。了解到这一点,就能找到解决方案:切换64位运行模式为32位。
解决步骤
切换IIS运行模式为32位
开始→运行→cmd,运行脚本:cscript %SYSTEMDRIVE%\inetpub\adminscripts\adsutil.vbs SET W3SVC/AppPools/Enable32bitAppOnWin64 1,即可将IIS由64位切换为32位模式;若想恢复为64位模式,运行脚本:cscript %SYSTEMDRIVE%\inetpub\adminscripts\adsutil.vbs SET W3SVC/AppPools/Enable32bitAppOnWin64 0。若脚本报错,切换路径为C:\Inetpub\AdminScripts,因为adsutil.vbs文件在该路径下。
Asp.net运行模式为32位
重新注册asp.net,开始→运行→cmd,运行脚本:%SYSTEMROOT%\Microsoft.NET\Framework \v2.0.40607\aspnet_regiis.exe -i。若要注册64位,脚本为:%SYSTEMROOT%\Microsoft.NET\Framework64\v2.0.40607 \aspnet_regiis.exe -i。
重启机器,IIS即可运行32位的程序,ODBC的连接也生效了。
我按照该方法试了下:
1、“切换IIS运行模式为32位”成功;
2、“Asp.net运行模式为32位”失败,提示“该错误指示相应计算机上没有安装 IIS。请在使用此工具前安装 IIS”
就没有尝试顺着这个路往下查找以解决
0 0
- win7 64位,在ODBC的DNS中对sql server配置成功,但连接失败
- 32应用程序使用odbc连接数据库在64位windows2008中需要配置32位odbc
- Win7 64位配置JDBC-ODBC数据源,连接ACCESS数据库
- vs 或 Sql server2012连接Sql server时出现的问题:已成功与服务器建立连接,但在登陆过程中发生错误
- vs 或 Sql server2012连接Sql server时出现的问题:已成功与服务器建立连接,但在登陆过程中发生错误
- win7 64位的数据源(ODBC)配置问题
- win7 64位的数据源(ODBC)配置问题
- Win7 64位操作系统下ODBC数据源的配置问题
- Qlikview配置ODBC连接SQL SERVER/ORACLE
- Qlikview配置ODBC连接ORACLE/SQL SERVER
- 在64位客户端使用32位的ODBC配置
- win7 64位下 pl/sql、toad连接oracle失败的问题
- Sql server2012连接Sql server 2008时出现的问题:已成功与服务器建立连接,但在登陆过程中发生错误。(provider:SSL Provider,error:0-接收到的消息异
- Sql server2012连接Sql server 2008时出现的问题:已成功与服务器建立连接,但在登陆过程中发生错误。(provider:SSL Provider,error:0-接收到的消息异
- 只知道ODBC中设置的系统数据源DNS 名称,如何连接SQL数据库?
- 如何在Win7 x64上的配置32位的PostgreSQL ODBC数据源
- win7 64位系统的odbc设置
- 在64位Win7中使用Navicat Premium 和PL\SQL Developer连接Oracle数据库备忘
- unity材质的切换
- 地址收藏
- Hibernate的criteria分页和hql分页
- VirtualBox is complaining that the kernel module is not loaded
- 行为树(Behavior Tree)实践(1)– 基本概念
- win7 64位,在ODBC的DNS中对sql server配置成功,但连接失败
- HDU1254 推箱子 双BFS
- Fragment VS Custom View Container
- mysql存储过程语法及实例
- 概率论中的Keyword
- jndi
- android 启动第三方应用的几种方法(整理)
- 《从零开始学Swift》学习笔记(Day 47)——final关键字
- 行为树(Behavior Tree)实践(2)– 进一步的讨论