_bstr_t strCnn("Provider=sqloledb;Data Source=SocietySQL;Integrated Security='SSPI';\
Initial Catalog=社保管理;Address=192.168.124.90,2433");//为了安全,帖在这里的IP地址我改了。 g_pCT.CreateInstance(__uuidof(Connection));
g_pRS.CreateInstance(__uuidof(Recordset));
g_pCT->Open(strCnn,"用户名","密码",adConnectUnspecified);//为了安全,用户名与密码我也改了
_bstr_t m_bstrSQL;
m_bstrSQL = "SELECT * FROM 个人信息 WHERE 社会保障号 = '"+m_strSHHBZHH1+"'";
g_pRS = g_pCT->Execute(m_bstrSQL,NULL,adCmdText);这里是我的一段代码。我在本机上运行一点问题都没有,可是放在别人的机器上就出问题了,错误提示竟是“末指定的错误”,他的机器上的System DSN与我设的一模一样。
因为我开始不会ADO,所以程序前面的部分是用DAO写的,DAO部分在他的机器上运行是没有问题的,而关于ADO这部分就出问题了,我觉得是我的strCnn这个参数给错了,但我又不知道正确的该如何,请高人给予指导,谢谢了。我又在OPEN这个函数的后一行写了一测试行,结果显示g_pCT这个连接根本没有打开,唉,真是郁闷,请高人看到了,一定帮忙解决一下啊!非常感谢!我是新来的,不懂规矩,如果说话有什么不适当的地方,请多包涵,谢谢了。
Initial Catalog=社保管理;Address=192.168.124.90,2433");//为了安全,帖在这里的IP地址我改了。 g_pCT.CreateInstance(__uuidof(Connection));
g_pRS.CreateInstance(__uuidof(Recordset));
g_pCT->Open(strCnn,"用户名","密码",adConnectUnspecified);//为了安全,用户名与密码我也改了
_bstr_t m_bstrSQL;
m_bstrSQL = "SELECT * FROM 个人信息 WHERE 社会保障号 = '"+m_strSHHBZHH1+"'";
g_pRS = g_pCT->Execute(m_bstrSQL,NULL,adCmdText);这里是我的一段代码。我在本机上运行一点问题都没有,可是放在别人的机器上就出问题了,错误提示竟是“末指定的错误”,他的机器上的System DSN与我设的一模一样。
因为我开始不会ADO,所以程序前面的部分是用DAO写的,DAO部分在他的机器上运行是没有问题的,而关于ADO这部分就出问题了,我觉得是我的strCnn这个参数给错了,但我又不知道正确的该如何,请高人给予指导,谢谢了。我又在OPEN这个函数的后一行写了一测试行,结果显示g_pCT这个连接根本没有打开,唉,真是郁闷,请高人看到了,一定帮忙解决一下啊!非常感谢!我是新来的,不懂规矩,如果说话有什么不适当的地方,请多包涵,谢谢了。
g_pCT->Open(strCnn,"用户名","密码",adConnectUnspecified);
这句代码有问题。因为我用了System DSN,所以这句话不应该这样写,而应该写成:
g_pCT->Open("SocietySQL","用户名","密码",adConnectUnspecified);
因为如果我用原来那句话的话,那么会用系统用户,使用信用联接去联接数据库,虽然后面有登录的用户名与密码。这样就在我的本机上登录就没有问题,因为SQL在我的机器上,但其它的机器就不行了。所以就需要把原来的那句strCnn的定义删了,改成了后面这句话,就搞定了,哈哈哈哈。