cout<<m_strCon;
m_pConnection->Open(m_strConnect, "", "",adModeUnknown);
cout<<"Success";
点击后显示
Provider=SQLOLEDB;Server=127.0.0.1;Database=CWDB;uid=sa;pwd=1234;过了五六秒钟又显示
abnormal program termination
Press any key to continue

解决方案 »

  1.   

    最上面还有一句
    m_strConnect =m_strCon;
      

  2.   

    加异常捕捉看看~
    竹板的经典代码:try
    {
    //你的ADO代码
    }
    catch (_com_error& e)
    {
    AfxMessageBox(e.Description());
    }
      

  3.   

    try
    {
    //创建Connection对象 m_pConnection.CreateInstance("ADODB.Connection");
    sprintf(m_strCon,"Provider=SQLOLEDB;Server=%s;Database=%s;uid=%s;pwd=%s;",m_servername,m_database,m_username,m_password); // cout<<m_strCon<<endl; m_strConnect =m_strCon;
    cout<<m_strCon;
    m_pConnection->Open(m_strConnect, "", "",adModeUnknown);

    if(m_pConnection==NULL)
    return -1;
    //创建记录集对象
    m_pRecordset.CreateInstance(__uuidof(Recordset));
    cout<<endl<<"finished"<<endl;
    }
    catch (_com_error e) 
    {
    cout<<"Sorry,Error";
    return -2;
    }
    就到open那儿卡住出错了,我新装的sqlserver sa1234都是对的
    运行只输出了上面说的内容
      

  4.   

    参考一下我给的答复:
    http://topic.csdn.net/u/20110312/13/4aa6d869-8aff-4edb-a646-7bb5c55e2e83.html?61142
      

  5.   

    C:\Documents and Settings\Administrator\Desktop\ConnDatabase\SQLServerDB.cpp(5) : warning C4652: compiler option 'Generate Browser Info' inconsistent with precompiled header; current command-line option will override that defined in the precompiled 
    header
    C:\Documents and Settings\Administrator\Desktop\ConnDatabase\SQLServerDB.cpp(83) : error C2065: 'AfxMessageBox' : undeclared identifier
    Error executing cl.exe.ConnDatabase.exe - 1 error(s), 1 warning(s)
      

  6.   

    你没有引入动态库吧:
    #import "c:\program files\common files\system\ado\msado15.dll" \
    no_namespace \
    rename ("EOF", "adoEOF")
      

  7.   


    我看了你的连接,在stdafx.h最后加上了这几句,但是跟没加一样
    说一下,这些代码好久以前我用过的工作正常,最近用拿来用了,就有问题了
      

  8.   

    我新装的SQLServer 2005难道那个Provider不能用SQLOLEDB ?
      

  9.   


    这个头文件include进来了没?
      

  10.   

    sql server 2005肯定是支持的,俺2005/2008都测试过~
      

  11.   

    解决了,大家注意,打开数据库时,先择数据库属性,里面有个servername我的是XIEYANGJ-83B541把IP的那个改成这个就行了,插入数据正常了,远程时不能用这样的方法,谢谢zxhx
     
    (竹溪寒雪)