It throws a _com_error object.
Further, you can catch it as follows:
try { // ... } catch(_com_error& e) { // ... }
inline void TESTHR(HRESULT x) { if FAILED(x) _com_issue_error(x); };
CString current = "";
try
{
// 你的ADO代码
}
catch (_com_error & e)
{
AfxMessageBox(e.Description());
}