vc ADO连接局域网MS-SQL

analysefirst 2008-07-21 11:39:28

// 初始化OLE/COM库环境
::CoInitialize(NULL);

try
{
// 创建Connection对象
m_pConnection.CreateInstance("ADODB.Connection");
// 设置连接字符串,必须是BSTR型或者_bstr_t类型

_bstr_t strConnect = "Provider=SQLOLEDB; Server=192.168.0.28;Database=HrSys; uid=sa; pwd=sa;";
m_pConnection->Open(strConnect,"","",adModeUnknown);


防火墙已关。可以telnet 192.168.0.28 1433 成功。
对方是SERVER2003 MS-SQL2000。我这台没有安装SQL。程序在别的有安装SQL的本机中可以访问。


Server=192.168.0.28这样写是不是正确的?

出错提示:
1、[DBNMPNTW]ConnectionOpen(CreatFile())。
2、在一个已关闭的或无效连接的对象参照上操作不被允许。


...全文
151 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
analysefirst 2008-07-21
  • 打赏
  • 举报
回复
用户名和密码没有错,
另现在已安装MSSQL客户端,还是不行。
analysefirst 2008-07-21
  • 打赏
  • 举报
回复
是混合登陆模式
scq2099yt 2008-07-21
  • 打赏
  • 举报
回复
Server=192.168.0.28是可以的
你的sql server是使用的混合登录模式,还是windows的??
内存泄漏 2008-07-21
  • 打赏
  • 举报
回复
1. sql server打上最新补丁
2. 你的sql server是使用的混合登录模式,还是windows的??
analysefirst 2008-07-21
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 zaodt 的回复:]
装个 SQL SERVER 的客户端。
[/Quote]

不装SQL客户端不行吗?

2003好像要装最新的补丁就可以了,以前也试过。
Server=192.168.0.28是可以的...........

他是操作系统是server2003的。已经打了SP1了
dirdirdir3 2008-07-21
  • 打赏
  • 举报
回复
2003好像要装最新的补丁就可以了,以前也试过。
Server=192.168.0.28是可以的...........
zaodt 2008-07-21
  • 打赏
  • 举报
回复
装个 SQL SERVER 的客户端。
analysefirst 2008-07-21
  • 打赏
  • 举报
回复
分不多,也没办法完全平均给分。谢谢
analysefirst 2008-07-21
  • 打赏
  • 举报
回复
搞定了。原来是SQL的客户端没有装
还有SP3的补丁没有打上。

提示访问拒绝,在每个对话框的ADO Data Control 的控件更改下数据源就可以了。非常谢谢!

结贴。
analysefirst 2008-07-21
  • 打赏
  • 举报
回复
安装了SP3补丁。
打开程序时一直提示无法连接SQL

编译之后再运行。可以进入程序,只有一个模块可以使用。
其他的提示访问拒绝!
yinwei1981 2008-07-21
  • 打赏
  • 举报
回复
需要安装sql sq4补丁
内存泄漏 2008-07-21
  • 打赏
  • 举报
回复
你换下面的连接字符串试试..如果还不行,建议把你的sql server打上补丁:
Provider=SQLOLEDB.1;Persist Security Info=False;User ID=sa;Password=sa;Initial Catalog=HrSys;Data Source=192.168.0.28;

4,011

社区成员

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

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