我用server 2000数据库,配置了ODBC数据源,我的程序是先连接master数据库,创建一个数据库AA,然后连接数据库AA,连接完成后,程序直接跳出来了,连VC++编译环境都关闭了,这是在调试的时候出的问题,如果直接执行程序,有时会出这样的问题,有时不会,郁闷死了,不知是何原因?

解决方案 »

  1.   

    有没有成功地Coinitialize()?connection->CreateInstance()?connection->open()?
    rs->open();
    另外,判断null值
    如:
    _variant_t vtest;
    vrest = rs->GetCOLLECT("TEST");
    CString s;
    if ( vtest.vt != VT_NULL)//不判断可能回死
    s = (LPCTSTR)(_bstr_t)vtest
      

  2.   

    我觉得很奇怪,我先连接master数据库是正常的,创建了数据库AA后,我也判断了创建AA成功了,不会是需要创建了AA之后要对服务器刷新吧?我是新手,如果问题太幼稚了,请谅解
      

  3.   

    在你出错的语句那里,用
    try{ 连接语句,sql操作语句}
    {
    }catch(_com_error e)
    {AfxMessageBox(e.Description());
    }看看错无提示
      

  4.   

    那只能一段段跟踪,MesssageBox,不然谁知道错在那里?
    只有找到原因才能debug,是不是
      

  5.   

    我强烈感觉是野指针包括connection.recordset的创建问题,
    没有副职,就用了;运气好还行,否则马上就给你难看了。
    看看有没有指针。将你的部分代码贴上来。