ado问题三:_RecordsetPtr
blt 2004-06-25 05:00:58 _ConnectionPtr pMyConnect = NULL;
HRESULT hr = pMyConnect.CreateInstance( __uuidof( Connection ) );
if( FAILED( hr ) )
{
AfxMessageBox( "pMyConnect.CreateInstance失败" );
return;
}
_bstr_t strConnect = "Provider=OraOLEDB.Oracle;Data Source=db;User Id=aaa;Password=bbb;";
//connecting to the database server now:
try
{
pMyConnect->Open( strConnect, "","" , NULL );
AfxMessageBox( "连接成功" );
}
catch( _com_error &e )
{
::MessageBox(NULL,e.Description(),"警告",MB_OK | MB_ICONWARNING);
return;
}
_RecordsetPtr m_pRecordset;
if( !FAILED( m_pRecordset.CreateInstance( __uuidof( Recordset ) ) ) )
{
AfxMessageBox( "m_pRecordset.CreateInstance失败" );
pMyConnect->Close();
return;
}
try
{
m_pRecordset->Open( _variant_t( "oe_press" ),
_variant_t( ( IDispatch * )pMyConnect, true ),
adOpenKeyset,
adLockOptimistic,
adCmdTable );
AfxMessageBox( "打开表成功" );
}
catch( _com_error &e )
{
AfxMessageBox( "无法打开表" );
}
pMyConnect->Close();
运行时m_pRecordset.CreateInstance失败,请教高人指点。