HRESULT hr;
try
{
hr = m_pConnection.CreateInstance("ADODB.Connection");///创建Connection对象
if(SUCCEEDED(hr))
{
hr = m_pConnection->Open("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=test.mdb","","",adModeUnknown);///连接数据库
}
}
catch(_com_error e)///捕捉异常
{
CString errormessage;
errormessage.Format("连接数据库失败!/r/n错误信息:%s",(char*)e.Description());//e.ErrorMessage()
AfxMessageBox(errormessage);///显示错误信息
PostQuitMessage(1);
}
m_pRecordset.CreateInstance("ADODB.Recordset");//创建Recordset对象的实例
_variant_t vPasswd;
_variant_t RecordsAffected;
CString selectCmd;
CString tmpPasswd;
char* pCmd;
selectCmd = "SELECT passwd FROM users WHERE username = '";
selectCmd += m_USER;
selectCmd += "'";
pCmd = selectCmd.GetBuffer(selectCmd.GetLength());
m_pRecordset = m_pConnection->Execute(_bstr_t(pCmd), &RecordsAffected, adCmdText);
if(m_pRecordset->adoEOF && m_pRecordset->adoBOF)
{
MessageBox("user not exist");
}
else
{
vPasswd = m_pRecordset->GetCollect((_variant_t)"passwd");
vPasswd.ChangeType(VT_BSTR,NULL);
tmpPasswd = vPasswd.bstrVal;
if(m_PASSWORD == tmpPasswd)
{
MessageBox("login sucess");
}
else
{
MessageBox("password error");
}
}