在 CString CMySet::GetDefaultConnect()中已经提供了
return _T("ODBC;DSN=MyDSN;UID=MyIDD;PWD=MyPWD");在连接成功的时候不会显示口令提问对话框。但是连接失败的时候,就要求重新输入,弹出该对话框。怎么设置才能使这个对话框在失败的时候不弹出?

解决方案 »

  1.   

    OpenEx(strLogin,CDatabase::noOdbcDialog|CDatabase::useCursorLib)其中noOdbcDialog就是我是菜鸟,高手清发言
      

  2.   

    我是用CRecordSet::Open,没法用bigsir的方法啊。
      

  3.   

    try{
    m_db.OpenEx(m_connectstr,CDatabase::noOdbcDialog);
    //db.Execute
    //AfxMessageBox("数据库连接成功");
    } catch(CDBException e)
    {
    AfxMessageBox(e.m_strError);
    return false;
    }
    绝对不出来!
      

  4.   

    .......如果用CRecordSet m_set; m_set.Open();怎么使它不出来啊?
    最近怎么经常连不上csdn啊:(
      

  5.   

    没有办法不出来
    除非阁下在ODBC连接中使用NT域识别或者在本地使用,
    一般连接数据库我都使用CDATABASE先建立一个连接,阁下用CRECORDSET怎么实现连接的,不妨提出来参考一下:
    如果是从ODBC源中直接引用,在ODBC连接中使用NT域识别应该可以解决。至于怎么经常连不上csdn啊
    TMD我还有3个帖子没结帐呢!
    我是菜鸟,高手清发言
      

  6.   

    我有一个CMySet,基类是CRecordSet,在GetDefaultConnect()中设定数据库名,UID,PWD,
    CMySet* m_pSet=new CMySet;
    m_pSet->Open();这样子打开的。