ADO在64位机子上访问ORACLE的问题

yashifc 2011-12-31 05:48:23
如题,在VC6.0下利用ADO访问ORACLE,在32的XP下可以正常完成功能,可在64位下的WIN7下总是有问题(先是在XP下编写调试的),一运行程序就弹出错误框:未找到提供程序,该程序未正确安装。
程序部分代码如下:
#import "C:\Program Files\Common Files\System\ado\msado15.dll" no_namespace rename("EOF", "adoEOF")

_ConnectionPtr m_pConnection;
_RecordsetPtr m_pRecordset;

BaliseLocation bal;
//_CommandPtr m_pCommand;

m_pConnection.CreateInstance(__uuidof(Connection));
m_pRecordset.CreateInstance(__uuidof(Recordset));
//m_pCommand.CreateInstance("ADODB.Command");

try
{
_bstr_t strConnect="Provider=OraOLEDB.Oracle.1;Password=tiger;User ID=scott;Data Source=orcl;Persist Security Info=True";
m_pConnection->Open(strConnect,"","",-1);
}
catch(_com_error e)
{
MessageBox(NULL,e.Description(),0,0);
}
执行OPEN函数,总是报异常。
在网上找了几天也没找到相应的解决方法,望高手解决下,谢谢
...全文
656 19 打赏 收藏 转发到动态 举报
写回复
用AI写文章
19 条回复
切换为时间正序
请发表友善的回复…
发表回复
YueXiaFuYun 2013-08-15
  • 打赏
  • 举报
回复
楼主啊,问题解决了吗? 我是在xp,03上面连接oracle都没问题,放到server08 x64上面,连接数据库的时候就报错。 还有 程序编译成64位,对应64位ORACLE客户端,vs2008好像不支持编译64位的程序啊。
saiyaman5 2012-01-11
  • 打赏
  • 举报
回复
[Quote=引用 16 楼 yashifc 的回复:]

不好意思,前段时间忙,我在64位的机子上还需要装32位的客户端?引用 14 楼 saiyaman5 的回复:

你需要安装32位的oracle客户端.
[/Quote]

是的,如17楼的兄弟所说的
酒红色的泪 2012-01-10
  • 打赏
  • 举报
回复
要么使用32位ORACLE客户端,对应你的32位应用程序
要么把你的应用程序编译成64位,对应64位ORACLE客户端
yashifc 2012-01-10
  • 打赏
  • 举报
回复
不好意思,前段时间忙,我在64位的机子上还需要装32位的客户端?[Quote=引用 14 楼 saiyaman5 的回复:]

你需要安装32位的oracle客户端.
[/Quote]
jkj9999 2012-01-05
  • 打赏
  • 举报
回复
升级吧,至少得vc9
yashifc 2012-01-05
  • 打赏
  • 举报
回复
是吗,你以前也是在64位的机子上吗,那应该不是VC6.0与64位机子的问题吧?
连接字符串没写对的话,应该在XP下也会问题啊?可我在XP下没问题[Quote=引用 11 楼 zero_226 的回复:]

我觉得要么是Oracle驱动没装好,要么是连接字符串没写对。

我以前也出现过这个错误,后来就疯狂的安装/卸载oracle
[/Quote]
zero_226 2012-01-05
  • 打赏
  • 举报
回复
[Quote=引用 12 楼 yashifc 的回复:]

是吗,你以前也是在64位的机子上吗,那应该不是VC6.0与64位机子的问题吧?
连接字符串没写对的话,应该在XP下也会问题啊?可我在XP下没问题引用 11 楼 zero_226 的回复:

我觉得要么是Oracle驱动没装好,要么是连接字符串没写对。

我以前也出现过这个错误,后来就疯狂的安装/卸载oracle
[/Quote]
不好意思,我一直是在32位机上,64位的没用过
saiyaman5 2012-01-05
  • 打赏
  • 举报
回复
你需要安装32位的oracle客户端.
yashifc 2012-01-04
  • 打赏
  • 举报
回复
求高手啊
zyq5945 2012-01-04
  • 打赏
  • 举报
回复
需要安装ORACLE的驱动程序。
zero_226 2012-01-04
  • 打赏
  • 举报
回复
我觉得要么是Oracle驱动没装好,要么是连接字符串没写对。

我以前也出现过这个错误,后来就疯狂的安装/卸载oracle
yashifc 2012-01-04
  • 打赏
  • 举报
回复
你是指VC6.0是否支持64位的版本吗?我也不知道啊,需要下个专门的版本吗?
还有个问题,如果不支持,应该编译时就会报错吧,我这个是运行结果的时候弹出的框框[Quote=引用 9 楼 oyljerry 的回复:]

是否支持64bit的版本.
[/Quote]
oyljerry 2012-01-04
  • 打赏
  • 举报
回复
是否支持64bit的版本.
zyq5945 2012-01-04
  • 打赏
  • 举报
回复
Oracle客户端就是带了驱动。
yashifc 2012-01-04
  • 打赏
  • 举报
回复
驱动,什么意思,在XP下不需要啊,难道在64位机子上需要?而且本地装有Oracle客户端[Quote=引用 5 楼 zyq5945 的回复:]
需要安装ORACLE的驱动程序。
[/Quote]
mrhonghong 2012-01-03
  • 打赏
  • 举报
回复
用ODBC吧.
yashifc 2012-01-02
  • 打赏
  • 举报
回复
高手们,帮帮忙啊,不要只顾着过年啊
yashifc 2011-12-31
  • 打赏
  • 举报
回复
怎么查看存不存在32位的ADO组件?还有如果不存在,是不是在创建实例时就会出错?[Quote=引用 1 楼 mscf 的回复:]
会不会是不存在32位的ado组件呢
[/Quote]
薛定谔之死猫 2011-12-31
  • 打赏
  • 举报
回复
会不会是不存在32位的ado组件呢

4,011

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 数据库
社区管理员
  • 数据库
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧