Вопрос по _RecordsetPtr и как его вернуть
От: Frosya Россия http://georgy.spb.ru
Дата: 10.09.03 15:58
Оценка:
Не хочу в каждой функции выкладывать портянку:

if ( pConnect != NULL )
{
    try
    {
        CString sql;
        sql.Format( "SELECT * FROM table" );

        _CommandPtr pCommand;
        pCommand.CreateInstance( __uuidof( Command ) );
        pCommand->ActiveConnection = pConnect;
        pCommand->CommandText = ( _bstr_t ) sql;

        _RecordsetPtr pRecordset;
        pRecordset.CreateInstance( __uuidof( Recordset ) );
        pRecordset->CursorLocation = adUseClient;
        pRecordset->Open( ( IDispatch * ) pCommand, vtMissing, adOpenStatic, adLockBatchOptimistic, adCmdUnknown );

        *res = ( _Recordset * ) pRecordset;
    }
    catch ( _com_error &e )
    {
        // err
    }
}


а хочу засунуть в функцию:

HRESULT Dialog::GetRecordset( CString sql, _Recordset ** res )
{
    if ( pConnect != NULL )
    {
        try
        {
            _CommandPtr pCommand;
            pCommand.CreateInstance( __uuidof( Command ) );
            pCommand->ActiveConnection = pConnect;
            pCommand->CommandText = ( _bstr_t ) sql;

            _RecordsetPtr pRecordset;
            pRecordset.CreateInstance( __uuidof( Recordset ) );
            pRecordset->CursorLocation = adUseClient;
            pRecordset->Open( ( IDispatch * ) pCommand, vtMissing, adOpenStatic, adLockBatchOptimistic, adCmdUnknown );
            *res = ( _Recordset * ) pRecordset;
        }
        catch ( _com_error &e )
        {
            // err
        }
    }

    return S_OK;
}


, но не понимаю, как возвернуть и получить ( для дальнейших действий ) _Recordset?

ПОМОГИТЕ, плиз, я уже устал воевать с этим. Я только начал изучать C++ и стопорица на чем-то не очень хочеца, так как ступор отбивает желание вообще изучать, а ведь интересно

Исправлена подсветка синтаксиса. -- ПК.
$perl = 1 if ( $php );
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.