我开发了一个VC程序,用ADO连接SQLSERVER数据库。现在在本机上运行正常,但是做成Realase版拷贝到别人的电脑上,运行程序时老是连接不上数据库,不知是哪里的问题,请大家帮忙分析分析。连接代码:
#import "C:\Program Files\Common Files\System\ado\msado15.dll" no_namespace rename("EOF", "adoEOF")bool CController::ConnectToDB()
{
CoInitialize(NULL);
HRESULT hr;
_ConnectionPtr con;//_ConnectionPtr是一个连接接口 try
{
hr = CController::con.CreateInstance("ADODB.Connection");
if(!SUCCEEDED(hr))
AfxMessageBox("初始化连接失败!");
hr = CController::con->Open("Driver={SQL Server};Server=xuke;database=TCM;UID=sa;PWD=123456","","",adModeUnknown);
if(!SUCCEEDED(hr))
AfxMessageBox("连接失败!");
}
catch(...)//捕捉异常
{
//AfxMessageBox(e.ErrorMessage());
AfxMessageBox("连接失败!");
return false;
}
return true;
}
#import "C:\Program Files\Common Files\System\ado\msado15.dll" no_namespace rename("EOF", "adoEOF")bool CController::ConnectToDB()
{
CoInitialize(NULL);
HRESULT hr;
_ConnectionPtr con;//_ConnectionPtr是一个连接接口 try
{
hr = CController::con.CreateInstance("ADODB.Connection");
if(!SUCCEEDED(hr))
AfxMessageBox("初始化连接失败!");
hr = CController::con->Open("Driver={SQL Server};Server=xuke;database=TCM;UID=sa;PWD=123456","","",adModeUnknown);
if(!SUCCEEDED(hr))
AfxMessageBox("连接失败!");
}
catch(...)//捕捉异常
{
//AfxMessageBox(e.ErrorMessage());
AfxMessageBox("连接失败!");
return false;
}
return true;
}
解决方案 »
- PC端管理手机文件 求给点思路.(C++)
- 初入C++,请各位大虾提点建议
- MFC中使用CRecordset的Open方法打开记录集时,弹出“常见错误 不能创建文件缓冲区”的报错对话框,如何处理?
- ini的注释怎么写?
- 有谁用过CASIO DT900手持终端的DLL编程吗?有的请进谢谢!!!!!!
- 请问各位大侠学完C++之后想学Windows编程应该看哪些书做为教材?
- 如何重用c++类
- 国庆快乐加散分,顺便问一个关于窗口的简单问题。
- 可测试性设计包括哪些方面?
- mfc!!谁能给我一个list控件LVS_EX_FULLROWSELECT|LVS_EX_GRIDLINES风格的应用例子
- 编译错误,小问题
- 急,急,急!!我#include<rapi.h>这个头文件,提示找不到,我该怎么做?!
要不就用odbc吧
那ADO不行吗?
C:\Program Files\Common Files\System\ado\msado15.dll
没有msado15.dll,你import什么?
可以在生成Realase版时,在项目配置中,选择静态连接.dll.
“要不就用odbc吧”
那ADO不行吗?
=======================
odbc和ADO两种概念吧? 它们怎么能互相取代呢?
从ODBC建一个源,然后连接一下
可能ADO就可以了
我也是开发了一个VC程序,用ADO连接SQLSERVER数据库。现在在本机上运行正常,换过ADO的属性连接其他机子有时能连接上,操作也是有时成功,总出现的错误就是“超时已过期”,高手帮忙
-----------------
把其中的server=xuke 改为server=数据库所在的ip地址