bool SQLServer::BuildSQL()
{
       CString sPath;
GetModuleFileName(NULL,sPath.GetBufferSetLength(MAX_PATH+1),MAX_PATH);
sPath.ReleaseBuffer();
int  nPso;
nPso=sPath.ReverseFind('\\');
sPath=sPath.Left(nPso);
CString lpszFile = sPath + "\\user.mdb";
char *szDesc;
int mlen;
szDesc=new char[256];
sprintf(szDesc,"DSN=%s? DESCRIPTION=TOC support source? DBQ=%s? FIL=MicrosoftAccess? DEFAULTDIR=%s?? ","user",lpszFile,sPath);
AfxMessageBox(szDesc);
mlen=strlen(szDesc);
for(int i=0;i<mlen;i++)
{
if (szDesc[i]=='?')
szDesc[i]='\0';
}
if (FALSE==SQLConfigDataSource(NULL,ODBC_ADD_DSN,"Microsoft Access Driver (*.mdb)\0",(LPCSTR)szDesc))
{
AfxMessageBox("注册失败");
}
CString sql=_T("select * from user1");
try
{
if (!m_db.Open("user"))
{
AfxMessageBox("dakaishibai");
}
m_set.m_pDatabase=&m_db;
//CRecordset m_sett(&m_db);

if (m_set.Open(AFX_DB_USE_DEFAULT_TYPE,sql))
{
AfxMessageBox("shibai");
}

}
catch(CDBException*error)
{
AfxMessageBox(error->m_strError);
}
}
////////////////////////////我的类有class Cuser : public CRecordset
class SQLServer : public CObject
在上面函数中CDatabase m_db;//数据源
Cuser m_set; //数据库我用了m_db.open("user")-->成功
m_set.m_pDatabase=&m_db;
CString sql=_T("select * from user1");
m_set.Open(AFX_DB_USE_DEFAULT_TYPE,sql))----------程序运行到这直接报错误推出程序
不知道什么原因
希望大侠们多多支招!
我QQ284798968
有热心人希望加我帮我弄弄谢谢!