CoInitialize(NULL); if(pConnection.CreateInstance(__uuidof(Connection))!=S_OK)
{
return FALSE;
}
char strConnect[512];
sprintf(strConnect,"Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=test;Data Source=PC-200912082109\SQL2005");
if(pConnection->Open(_bstr_t(strConnect), "",  "", adModeUnknown)!=S_OK)
{
return FALSE;
}
return TRUE;
请高手指点一下

解决方案 »

  1.   

    使用UDL文件可以链接[oledb]
    ; Everything after this line is an OLE DB initstring
    Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=test;Data Source=PC-200912082109\SQL2005
      

  2.   

    试试我用的连接串,经过测试是成功的。driver={SQL Server};Server=192.xx.xx.xx;database=TestFax;Uid=sa;pwd=xxx;连接本机的话,Server=(local)或server=计算机名
    连接远程的话,Server=IP地址,记住一定要启用TCP/IP
      

  3.   


    AfxOleInit();
    try
    {
    m_pConnection.CreateInstance(__uuidof(Connection));
    }
    catch(_com_error e)
    {
    AfxMessageBox("创建连接实例失败!");
    //看你的返回类型选择是否返回:return FALSE;


    CString strConnect="Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=test;Data Source=PC-200912082109\SQL2005";
    _bstr_t varConnect(strConnect); 
    try                 
    {
    m_pConnection->Open(varConnect,"","",adConnectUnspecified);

    }
    catch(_com_error e)
    {
    AfxMessageBox("数据库连接失败!");
    //看你的返回类型选择是否返回:return FALSE;

      

  4.   

    上面的还差点:你的连接字符串还少了一个“\”
    用下面的代码试试:AfxOleInit();
        try
        {
            m_pConnection.CreateInstance(__uuidof(Connection));
        }
        catch(_com_error e)
        {
            AfxMessageBox("创建连接实例失败!");
            //看你的返回类型选择是否返回:return FALSE;
        } 
        
        CString strConnect="Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=test;Data Source=PC-200912082109\\SQL2005";
        _bstr_t varConnect(strConnect); 
        try                 
        {            
            m_pConnection->Open(varConnect,"","",adConnectUnspecified);
            
        }
        catch(_com_error e)
        {
            AfxMessageBox("数据库连接失败!");
            //看你的返回类型选择是否返回:return FALSE;
        } 
      

  5.   

    用这个软件试试
    http://topic.csdn.net/u/20100907/23/ecf4483a-9809-4499-85e4-b360b088f4a1.html
    ADO操作数据库请用异常捕获
    try
    {
    //你的ADO代码
    }
    catch (_com_error& e)
    {
    AfxMessageBox(e.Description());
    }