ADO是依靠_com_error,来判断是否提交一个command得到成功的返回,
ADO的函数是 HRESULT 作为返回码,你可以通过catch( _com_error &e )
来得到错误信息。
try
{
long lErrorCount = m_IConnection->Errors->Count;
memset( m_ErrorMessage, 0, sizeof( m_ErrorMessage ) );
for( long i = 0; i < lErrorCount; i ++ )
{
pError = m_IConnection->Errors->GetItem( i );
sprintf( m_ErrorMessage, "数据库错误:(%s)",
_com_util::ConvertBSTRToString( pError->Description ) );
Error( m_ErrorMessage );
}
}
catch( _com_error &e )
{
GetCOMError( e );
}