我的代码是
stdafx.h#import "c:\program files\common files\system\ado\msado15.dll" no_namespace rename("EOF","adoEOF")void button1()
{
::CoInitialize(NULL);
_ConnectionPtr m_pConnection;
m_pConnection.CreateInstance(_uuidof(Connection)); try
{
m_pConnection->Open("driver=SQL Server;Server=127.0.0.1;DATABASE=pubs;UID=sa;PWD=;","","",adModeUnknown); m_pConnection->Close();
}catch (_com_error e)//异常处理
{
AfxMessageBox(e.ErrorMessage());
} m_pConnection = NULL;    ::CoUninitialize();//释放程序占用的COM 资源。
}

解决方案 »

  1.   

    char buf[100];
    HRESULT hr;
    try
    {
    hr=m_pConnect.CreateInstance("ADODB.Connection");
    if(SUCCEEDED(hr))
    {
    hr = m_pConnect->Open(("driver=SQL Server;Server=127.0.0.1;DATABASE=pubs;UID=sa;PWD=;","","",adModeUnknown
    );
    }
    }
    catch(_com_error e)
    {
    AfxMessageBox(e.ErrorMessage());
    return FALSE;
    }
      

  2.   

    to jnxulei(石头)
    你的代码跟我的有什么区别吗?
      

  3.   

    改一下Open的连接字符串:
    hr = m_pConnect->Open("Provider=SQLOLEDB.1;Persist Security Info=False;User ID=sa;Initial Catalog=pubs;Data Source=127.0.0.1","","",adModeUnknown
    );
      

  4.   

    hr = m_pConnect->Open("Provider=SQLOLEDB.1;Persist Security Info=False;User ID=sa;Initial Catalog=pubs;Data Source=127.0.0.1","","",adModeUnknown
    );
    错误信息是:
    发生未指明错误!
      

  5.   

    strConn.Format("Provider=SQLOLEDB;Password=%s;Persist Security Info=True;User ID=%s;Initial Catalog=%s;Data Source=%s",
    m_strPassword,
    m_strUser,
    m_strDatabase,
    m_strServer);