SQLConfigDataSource()函数动态配置SQL数据源出错(50分)
如题,工程是单文档工程,未选择Database view,即在MFC AppWizard - step2 of 6未选择第三和第四项。
创建数据源部分代码如下:
CAccess::CAccess(CHAR* lpszAccessFilePathName)
{
m_bConnectionOK = FALSE;
if( lpszAccessFilePathName )
{
m_strAccessFilePathName = lpszAccessFilePathName;
// Create DSN config.
string strDSNConfig;
strDSNConfig = "DSN=HtDB;DBQ=";
strDSNConfig.append( m_strAccessFilePathName );
strDSNConfig.append( ";PWD=6418791;UID=xiangying;");
if ( SQLConfigDataSource(NULL, ODBC_ADD_DSN, "SQL Server\0", strDSNConfig.c_str() ) )
{
//创建数据源成功
CString strSql;
strSql.Format("DSN=%s;;","HtDB" );
// 创建数据库
TRY
{
m_MfcDatabase.OpenEx( strSql , CDatabase::noOdbcDialog);
m_bConnectionOK = TRUE;
}
CATCH( CDBException, e )
{
CHAR szErrMsg[1024];
ZeroMemory( szErrMsg, 1024 );
e -> GetErrorMessage(szErrMsg,1024);
MessageBox( NULL , szErrMsg , "错误" , NULL);
}
END_CATCH
}
else
{
MessageBox( NULL , "Config ODBC Database false!" , "错误" , NULL);
}
}
}
调用构造函数如下:
CAccess m_AccessDB("hotel_Data.MDF");
请详细解释下该函数的用法,另外我出错在哪?