用函数SQLConfigDataSource(NULL,ODBC_ADD_DSN,"Microsoft Access Driver (*.mdb)","DSN=ykyy\0DBQ=e:\\项目\\门诊\\YKYY.MDB\0DEFAULTEDDIR=e:\\项目\\门诊\0\0"));这样创建成功;返回值为1
CString str="DSN=ykyy\0DBQ=e:\\项目\\门诊\\YKYY.MDB\0DEFAULTEDDIR=e:\\项目\\门诊\0\0"
if(!SQLConfigDataSource(NULL,ODBC_ADD_DSN,"Microsoft Access Driver (*.mdb)",(LPCSTR)szDesc))这样做就不行,返回值为0
请问为什么 多谢

解决方案 »

  1.   

    你自己看看str赋值以后的内容是什么。
      

  2.   

    返回值是"DSN=ykyy"
    如果我CString str="DSN=ykyy DBQ=e:\\项目\\门诊\\YKYY.MDB DEFAULTEDDIR=e:\\项目\\门诊\0\0"这样赋值的话 str虽然等于 "DSN=ykyy DBQ=e:\\项目\\门诊\\YKYY.MDB DEFAULTEDDIR=e:\\项目\\门诊\"但是程序运行时提示  "can not dns"
      

  3.   

    DSN字符串是用“;”分隔各个值的。