Здравствуйте mitq, Вы писали:
M>Использование ADO — это что-то типа:
M>M>CoInitialize( 0 );
M>try
M>{
M> _ConnectionPtr pConnection = 0;
M> if ( SUCCEEDED( pConnection.CreateInstance( __uuidof(Connection) ) ) )
M> {
M> pConnection->ConnectionString = "DRIVER=SQL Server;SERVER=сервер;DATABASE=бд;UID=пользователь;PWD=пароль";
M> pConnection->ConnectionTimeout = 30;
M> pConnection->Open( "", "", "", adConnectUnspecified );
M> bool bConnect = pConnection->State == adStateOpen;
M> //
M> // Используем pConnection (пока не разобрался, как :) )
M> //
M> if ( bConnect ) pConnection->Close();
M> }
M>}
M>catch ( _com_error & e )
M>{
M> // ...
M>}
M>CoUninitialize();
M>
M>Если это то самое ADO, то какое-то оно... все такое неинкапсулированное, что ли... и на первый взгляд не очень симпатичное.
M>Скажите, пожалуйста, я в правильном направлении иду?
Идете вы в правильном направлении, и никто вам не мешает инкапсулировать ADO самому. Вы же на ++ пишете, вот и создайте два класса
типа: CADOConnection и CADORecordset.