Source code of Windows XP (NT5)
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

1126 lines
35 KiB

  1. // Created by Microsoft (R) C/C++ Compiler Version 12.00.8472.0 (6811bad5).
  2. //
  3. // l:\dev\utilities\checksym\releaseunicode\msado15.tli
  4. //
  5. // Wrapper implementations for Win32 type library C:\temp\msado15.dll
  6. // compiler-generated file created 12/20/99 at 17:04:06 - DO NOT EDIT!
  7. #pragma once
  8. //
  9. // interface _Collection wrapper method implementations
  10. //
  11. inline long _Collection::GetCount ( ) {
  12. long _result;
  13. HRESULT _hr = get_Count(&_result);
  14. if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this));
  15. return _result;
  16. }
  17. inline IUnknownPtr _Collection::_NewEnum ( ) {
  18. IUnknown * _result;
  19. HRESULT _hr = raw__NewEnum(&_result);
  20. if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this));
  21. return IUnknownPtr(_result, false);
  22. }
  23. inline HRESULT _Collection::Refresh ( ) {
  24. HRESULT _hr = raw_Refresh();
  25. if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this));
  26. return _hr;
  27. }
  28. //
  29. // interface _DynaCollection wrapper method implementations
  30. //
  31. inline HRESULT _DynaCollection::Append ( IDispatch * Object ) {
  32. HRESULT _hr = raw_Append(Object);
  33. if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this));
  34. return _hr;
  35. }
  36. inline HRESULT _DynaCollection::Delete ( const _variant_t & Index ) {
  37. HRESULT _hr = raw_Delete(Index);
  38. if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this));
  39. return _hr;
  40. }
  41. //
  42. // interface _ADO wrapper method implementations
  43. //
  44. inline PropertiesPtr _ADO::GetProperties ( ) {
  45. struct Properties * _result;
  46. HRESULT _hr = get_Properties(&_result);
  47. if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this));
  48. return PropertiesPtr(_result, false);
  49. }
  50. //
  51. // interface Properties wrapper method implementations
  52. //
  53. inline PropertyPtr Properties::GetItem ( const _variant_t & Index ) {
  54. struct Property * _result;
  55. HRESULT _hr = get_Item(Index, &_result);
  56. if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this));
  57. return PropertyPtr(_result, false);
  58. }
  59. //
  60. // interface Property wrapper method implementations
  61. //
  62. inline _variant_t Property::GetValue ( ) {
  63. VARIANT _result;
  64. VariantInit(&_result);
  65. HRESULT _hr = get_Value(&_result);
  66. if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this));
  67. return _variant_t(_result, false);
  68. }
  69. inline void Property::PutValue ( const _variant_t & pval ) {
  70. HRESULT _hr = put_Value(pval);
  71. if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this));
  72. }
  73. inline _bstr_t Property::GetName ( ) {
  74. BSTR _result;
  75. HRESULT _hr = get_Name(&_result);
  76. if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this));
  77. return _bstr_t(_result, false);
  78. }
  79. inline enum DataTypeEnum Property::GetType ( ) {
  80. enum DataTypeEnum _result;
  81. HRESULT _hr = get_Type(&_result);
  82. if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this));
  83. return _result;
  84. }
  85. inline long Property::GetAttributes ( ) {
  86. long _result;
  87. HRESULT _hr = get_Attributes(&_result);
  88. if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this));
  89. return _result;
  90. }
  91. inline void Property::PutAttributes ( long plAttributes ) {
  92. HRESULT _hr = put_Attributes(plAttributes);
  93. if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this));
  94. }
  95. //
  96. // interface Error wrapper method implementations
  97. //
  98. inline long Error::GetNumber ( ) {
  99. long _result;
  100. HRESULT _hr = get_Number(&_result);
  101. if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this));
  102. return _result;
  103. }
  104. inline _bstr_t Error::GetSource ( ) {
  105. BSTR _result;
  106. HRESULT _hr = get_Source(&_result);
  107. if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this));
  108. return _bstr_t(_result, false);
  109. }
  110. inline _bstr_t Error::GetDescription ( ) {
  111. BSTR _result;
  112. HRESULT _hr = get_Description(&_result);
  113. if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this));
  114. return _bstr_t(_result, false);
  115. }
  116. inline _bstr_t Error::GetHelpFile ( ) {
  117. BSTR _result;
  118. HRESULT _hr = get_HelpFile(&_result);
  119. if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this));
  120. return _bstr_t(_result, false);
  121. }
  122. inline long Error::GetHelpContext ( ) {
  123. long _result;
  124. HRESULT _hr = get_HelpContext(&_result);
  125. if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this));
  126. return _result;
  127. }
  128. inline _bstr_t Error::GetSQLState ( ) {
  129. BSTR _result;
  130. HRESULT _hr = get_SQLState(&_result);
  131. if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this));
  132. return _bstr_t(_result, false);
  133. }
  134. inline long Error::GetNativeError ( ) {
  135. long _result;
  136. HRESULT _hr = get_NativeError(&_result);
  137. if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this));
  138. return _result;
  139. }
  140. //
  141. // interface Errors wrapper method implementations
  142. //
  143. inline ErrorPtr Errors::GetItem ( const _variant_t & Index ) {
  144. struct Error * _result;
  145. HRESULT _hr = get_Item(Index, &_result);
  146. if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this));
  147. return ErrorPtr(_result, false);
  148. }
  149. inline HRESULT Errors::Clear ( ) {
  150. HRESULT _hr = raw_Clear();
  151. if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this));
  152. return _hr;
  153. }
  154. //
  155. // interface _Command wrapper method implementations
  156. //
  157. inline _ConnectionPtr _Command::GetActiveConnection ( ) {
  158. struct _Connection * _result;
  159. HRESULT _hr = get_ActiveConnection(&_result);
  160. if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this));
  161. return _ConnectionPtr(_result, false);
  162. }
  163. inline void _Command::PutRefActiveConnection ( struct _Connection * ppvObject ) {
  164. HRESULT _hr = putref_ActiveConnection(ppvObject);
  165. if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this));
  166. }
  167. inline void _Command::PutActiveConnection ( const _variant_t & ppvObject ) {
  168. HRESULT _hr = put_ActiveConnection(ppvObject);
  169. if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this));
  170. }
  171. inline _bstr_t _Command::GetCommandText ( ) {
  172. BSTR _result;
  173. HRESULT _hr = get_CommandText(&_result);
  174. if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this));
  175. return _bstr_t(_result, false);
  176. }
  177. inline void _Command::PutCommandText ( _bstr_t pbstr ) {
  178. HRESULT _hr = put_CommandText(pbstr);
  179. if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this));
  180. }
  181. inline long _Command::GetCommandTimeout ( ) {
  182. long _result;
  183. HRESULT _hr = get_CommandTimeout(&_result);
  184. if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this));
  185. return _result;
  186. }
  187. inline void _Command::PutCommandTimeout ( long pl ) {
  188. HRESULT _hr = put_CommandTimeout(pl);
  189. if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this));
  190. }
  191. inline VARIANT_BOOL _Command::GetPrepared ( ) {
  192. VARIANT_BOOL _result;
  193. HRESULT _hr = get_Prepared(&_result);
  194. if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this));
  195. return _result;
  196. }
  197. inline void _Command::PutPrepared ( VARIANT_BOOL pfPrepared ) {
  198. HRESULT _hr = put_Prepared(pfPrepared);
  199. if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this));
  200. }
  201. inline _RecordsetPtr _Command::Execute ( VARIANT * RecordsAffected, VARIANT * Parameters, long Options ) {
  202. struct _Recordset * _result;
  203. HRESULT _hr = raw_Execute(RecordsAffected, Parameters, Options, &_result);
  204. if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this));
  205. return _RecordsetPtr(_result, false);
  206. }
  207. inline _ParameterPtr _Command::CreateParameter ( _bstr_t Name, enum DataTypeEnum Type, enum ParameterDirectionEnum Direction, long Size, const _variant_t & Value ) {
  208. struct _Parameter * _result;
  209. HRESULT _hr = raw_CreateParameter(Name, Type, Direction, Size, Value, &_result);
  210. if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this));
  211. return _ParameterPtr(_result, false);
  212. }
  213. inline ParametersPtr _Command::GetParameters ( ) {
  214. struct Parameters * _result;
  215. HRESULT _hr = get_Parameters(&_result);
  216. if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this));
  217. return ParametersPtr(_result, false);
  218. }
  219. inline void _Command::PutCommandType ( enum CommandTypeEnum plCmdType ) {
  220. HRESULT _hr = put_CommandType(plCmdType);
  221. if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this));
  222. }
  223. inline enum CommandTypeEnum _Command::GetCommandType ( ) {
  224. enum CommandTypeEnum _result;
  225. HRESULT _hr = get_CommandType(&_result);
  226. if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this));
  227. return _result;
  228. }
  229. inline _bstr_t _Command::GetName ( ) {
  230. BSTR _result;
  231. HRESULT _hr = get_Name(&_result);
  232. if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this));
  233. return _bstr_t(_result, false);
  234. }
  235. inline void _Command::PutName ( _bstr_t pbstrName ) {
  236. HRESULT _hr = put_Name(pbstrName);
  237. if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this));
  238. }
  239. //
  240. // interface _Connection wrapper method implementations
  241. //
  242. inline _bstr_t _Connection::GetConnectionString ( ) {
  243. BSTR _result;
  244. HRESULT _hr = get_ConnectionString(&_result);
  245. if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this));
  246. return _bstr_t(_result, false);
  247. }
  248. inline void _Connection::PutConnectionString ( _bstr_t pbstr ) {
  249. HRESULT _hr = put_ConnectionString(pbstr);
  250. if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this));
  251. }
  252. inline long _Connection::GetCommandTimeout ( ) {
  253. long _result;
  254. HRESULT _hr = get_CommandTimeout(&_result);
  255. if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this));
  256. return _result;
  257. }
  258. inline void _Connection::PutCommandTimeout ( long plTimeout ) {
  259. HRESULT _hr = put_CommandTimeout(plTimeout);
  260. if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this));
  261. }
  262. inline long _Connection::GetConnectionTimeout ( ) {
  263. long _result;
  264. HRESULT _hr = get_ConnectionTimeout(&_result);
  265. if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this));
  266. return _result;
  267. }
  268. inline void _Connection::PutConnectionTimeout ( long plTimeout ) {
  269. HRESULT _hr = put_ConnectionTimeout(plTimeout);
  270. if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this));
  271. }
  272. inline _bstr_t _Connection::GetVersion ( ) {
  273. BSTR _result;
  274. HRESULT _hr = get_Version(&_result);
  275. if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this));
  276. return _bstr_t(_result, false);
  277. }
  278. inline HRESULT _Connection::Close ( ) {
  279. HRESULT _hr = raw_Close();
  280. if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this));
  281. return _hr;
  282. }
  283. inline _RecordsetPtr _Connection::Execute ( _bstr_t CommandText, VARIANT * RecordsAffected, long Options ) {
  284. struct _Recordset * _result;
  285. HRESULT _hr = raw_Execute(CommandText, RecordsAffected, Options, &_result);
  286. if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this));
  287. return _RecordsetPtr(_result, false);
  288. }
  289. inline long _Connection::BeginTrans ( ) {
  290. long _result;
  291. HRESULT _hr = raw_BeginTrans(&_result);
  292. if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this));
  293. return _result;
  294. }
  295. inline HRESULT _Connection::CommitTrans ( ) {
  296. HRESULT _hr = raw_CommitTrans();
  297. if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this));
  298. return _hr;
  299. }
  300. inline HRESULT _Connection::RollbackTrans ( ) {
  301. HRESULT _hr = raw_RollbackTrans();
  302. if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this));
  303. return _hr;
  304. }
  305. inline HRESULT _Connection::Open ( _bstr_t ConnectionString, _bstr_t UserID, _bstr_t Password, long Options ) {
  306. HRESULT _hr = raw_Open(ConnectionString, UserID, Password, Options);
  307. if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this));
  308. return _hr;
  309. }
  310. inline ErrorsPtr _Connection::GetErrors ( ) {
  311. struct Errors * _result;
  312. HRESULT _hr = get_Errors(&_result);
  313. if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this));
  314. return ErrorsPtr(_result, false);
  315. }
  316. inline _bstr_t _Connection::GetDefaultDatabase ( ) {
  317. BSTR _result;
  318. HRESULT _hr = get_DefaultDatabase(&_result);
  319. if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this));
  320. return _bstr_t(_result, false);
  321. }
  322. inline void _Connection::PutDefaultDatabase ( _bstr_t pbstr ) {
  323. HRESULT _hr = put_DefaultDatabase(pbstr);
  324. if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this));
  325. }
  326. inline enum IsolationLevelEnum _Connection::GetIsolationLevel ( ) {
  327. enum IsolationLevelEnum _result;
  328. HRESULT _hr = get_IsolationLevel(&_result);
  329. if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this));
  330. return _result;
  331. }
  332. inline void _Connection::PutIsolationLevel ( enum IsolationLevelEnum Level ) {
  333. HRESULT _hr = put_IsolationLevel(Level);
  334. if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this));
  335. }
  336. inline long _Connection::GetAttributes ( ) {
  337. long _result;
  338. HRESULT _hr = get_Attributes(&_result);
  339. if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this));
  340. return _result;
  341. }
  342. inline void _Connection::PutAttributes ( long plAttr ) {
  343. HRESULT _hr = put_Attributes(plAttr);
  344. if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this));
  345. }
  346. inline enum CursorLocationEnum _Connection::GetCursorLocation ( ) {
  347. enum CursorLocationEnum _result;
  348. HRESULT _hr = get_CursorLocation(&_result);
  349. if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this));
  350. return _result;
  351. }
  352. inline void _Connection::PutCursorLocation ( enum CursorLocationEnum plCursorLoc ) {
  353. HRESULT _hr = put_CursorLocation(plCursorLoc);
  354. if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this));
  355. }
  356. inline enum ConnectModeEnum _Connection::GetMode ( ) {
  357. enum ConnectModeEnum _result;
  358. HRESULT _hr = get_Mode(&_result);
  359. if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this));
  360. return _result;
  361. }
  362. inline void _Connection::PutMode ( enum ConnectModeEnum plMode ) {
  363. HRESULT _hr = put_Mode(plMode);
  364. if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this));
  365. }
  366. inline _bstr_t _Connection::GetProvider ( ) {
  367. BSTR _result;
  368. HRESULT _hr = get_Provider(&_result);
  369. if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this));
  370. return _bstr_t(_result, false);
  371. }
  372. inline void _Connection::PutProvider ( _bstr_t pbstr ) {
  373. HRESULT _hr = put_Provider(pbstr);
  374. if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this));
  375. }
  376. inline long _Connection::GetState ( ) {
  377. long _result;
  378. HRESULT _hr = get_State(&_result);
  379. if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this));
  380. return _result;
  381. }
  382. inline _RecordsetPtr _Connection::OpenSchema ( enum SchemaEnum Schema, const _variant_t & Restrictions, const _variant_t & SchemaID ) {
  383. struct _Recordset * _result;
  384. HRESULT _hr = raw_OpenSchema(Schema, Restrictions, SchemaID, &_result);
  385. if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this));
  386. return _RecordsetPtr(_result, false);
  387. }
  388. //
  389. // interface _Recordset wrapper method implementations
  390. //
  391. inline enum PositionEnum _Recordset::GetAbsolutePosition ( ) {
  392. enum PositionEnum _result;
  393. HRESULT _hr = get_AbsolutePosition(&_result);
  394. if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this));
  395. return _result;
  396. }
  397. inline void _Recordset::PutAbsolutePosition ( enum PositionEnum pl ) {
  398. HRESULT _hr = put_AbsolutePosition(pl);
  399. if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this));
  400. }
  401. inline void _Recordset::PutRefActiveConnection ( IDispatch * pvar ) {
  402. HRESULT _hr = putref_ActiveConnection(pvar);
  403. if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this));
  404. }
  405. inline void _Recordset::PutActiveConnection ( const _variant_t & pvar ) {
  406. HRESULT _hr = put_ActiveConnection(pvar);
  407. if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this));
  408. }
  409. inline _variant_t _Recordset::GetActiveConnection ( ) {
  410. VARIANT _result;
  411. VariantInit(&_result);
  412. HRESULT _hr = get_ActiveConnection(&_result);
  413. if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this));
  414. return _variant_t(_result, false);
  415. }
  416. inline VARIANT_BOOL _Recordset::GetBOF ( ) {
  417. VARIANT_BOOL _result;
  418. HRESULT _hr = get_BOF(&_result);
  419. if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this));
  420. return _result;
  421. }
  422. inline _variant_t _Recordset::GetBookmark ( ) {
  423. VARIANT _result;
  424. VariantInit(&_result);
  425. HRESULT _hr = get_Bookmark(&_result);
  426. if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this));
  427. return _variant_t(_result, false);
  428. }
  429. inline void _Recordset::PutBookmark ( const _variant_t & pvBookmark ) {
  430. HRESULT _hr = put_Bookmark(pvBookmark);
  431. if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this));
  432. }
  433. inline long _Recordset::GetCacheSize ( ) {
  434. long _result;
  435. HRESULT _hr = get_CacheSize(&_result);
  436. if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this));
  437. return _result;
  438. }
  439. inline void _Recordset::PutCacheSize ( long pl ) {
  440. HRESULT _hr = put_CacheSize(pl);
  441. if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this));
  442. }
  443. inline enum CursorTypeEnum _Recordset::GetCursorType ( ) {
  444. enum CursorTypeEnum _result;
  445. HRESULT _hr = get_CursorType(&_result);
  446. if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this));
  447. return _result;
  448. }
  449. inline void _Recordset::PutCursorType ( enum CursorTypeEnum plCursorType ) {
  450. HRESULT _hr = put_CursorType(plCursorType);
  451. if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this));
  452. }
  453. inline VARIANT_BOOL _Recordset::GetEndOfFile ( ) {
  454. VARIANT_BOOL _result;
  455. HRESULT _hr = get_EndOfFile(&_result);
  456. if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this));
  457. return _result;
  458. }
  459. inline FieldsPtr _Recordset::GetFields ( ) {
  460. struct Fields * _result;
  461. HRESULT _hr = get_Fields(&_result);
  462. if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this));
  463. return FieldsPtr(_result, false);
  464. }
  465. inline enum LockTypeEnum _Recordset::GetLockType ( ) {
  466. enum LockTypeEnum _result;
  467. HRESULT _hr = get_LockType(&_result);
  468. if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this));
  469. return _result;
  470. }
  471. inline void _Recordset::PutLockType ( enum LockTypeEnum plLockType ) {
  472. HRESULT _hr = put_LockType(plLockType);
  473. if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this));
  474. }
  475. inline long _Recordset::GetMaxRecords ( ) {
  476. long _result;
  477. HRESULT _hr = get_MaxRecords(&_result);
  478. if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this));
  479. return _result;
  480. }
  481. inline void _Recordset::PutMaxRecords ( long plMaxRecords ) {
  482. HRESULT _hr = put_MaxRecords(plMaxRecords);
  483. if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this));
  484. }
  485. inline long _Recordset::GetRecordCount ( ) {
  486. long _result;
  487. HRESULT _hr = get_RecordCount(&_result);
  488. if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this));
  489. return _result;
  490. }
  491. inline void _Recordset::PutRefSource ( IDispatch * pvSource ) {
  492. HRESULT _hr = putref_Source(pvSource);
  493. if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this));
  494. }
  495. inline void _Recordset::PutSource ( _bstr_t pvSource ) {
  496. HRESULT _hr = put_Source(pvSource);
  497. if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this));
  498. }
  499. inline _variant_t _Recordset::GetSource ( ) {
  500. VARIANT _result;
  501. VariantInit(&_result);
  502. HRESULT _hr = get_Source(&_result);
  503. if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this));
  504. return _variant_t(_result, false);
  505. }
  506. inline HRESULT _Recordset::AddNew ( const _variant_t & FieldList, const _variant_t & Values ) {
  507. HRESULT _hr = raw_AddNew(FieldList, Values);
  508. if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this));
  509. return _hr;
  510. }
  511. inline HRESULT _Recordset::CancelUpdate ( ) {
  512. HRESULT _hr = raw_CancelUpdate();
  513. if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this));
  514. return _hr;
  515. }
  516. inline HRESULT _Recordset::Close ( ) {
  517. HRESULT _hr = raw_Close();
  518. if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this));
  519. return _hr;
  520. }
  521. inline HRESULT _Recordset::Delete ( enum AffectEnum AffectRecords ) {
  522. HRESULT _hr = raw_Delete(AffectRecords);
  523. if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this));
  524. return _hr;
  525. }
  526. inline _variant_t _Recordset::GetRows ( long Rows, const _variant_t & Start, const _variant_t & Fields ) {
  527. VARIANT _result;
  528. VariantInit(&_result);
  529. HRESULT _hr = raw_GetRows(Rows, Start, Fields, &_result);
  530. if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this));
  531. return _variant_t(_result, false);
  532. }
  533. inline HRESULT _Recordset::Move ( long NumRecords, const _variant_t & Start ) {
  534. HRESULT _hr = raw_Move(NumRecords, Start);
  535. if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this));
  536. return _hr;
  537. }
  538. inline HRESULT _Recordset::MoveNext ( ) {
  539. HRESULT _hr = raw_MoveNext();
  540. if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this));
  541. return _hr;
  542. }
  543. inline HRESULT _Recordset::MovePrevious ( ) {
  544. HRESULT _hr = raw_MovePrevious();
  545. if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this));
  546. return _hr;
  547. }
  548. inline HRESULT _Recordset::MoveFirst ( ) {
  549. HRESULT _hr = raw_MoveFirst();
  550. if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this));
  551. return _hr;
  552. }
  553. inline HRESULT _Recordset::MoveLast ( ) {
  554. HRESULT _hr = raw_MoveLast();
  555. if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this));
  556. return _hr;
  557. }
  558. inline HRESULT _Recordset::Open ( const _variant_t & Source, const _variant_t & ActiveConnection, enum CursorTypeEnum CursorType, enum LockTypeEnum LockType, long Options ) {
  559. HRESULT _hr = raw_Open(Source, ActiveConnection, CursorType, LockType, Options);
  560. if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this));
  561. return _hr;
  562. }
  563. inline HRESULT _Recordset::Requery ( long Options ) {
  564. HRESULT _hr = raw_Requery(Options);
  565. if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this));
  566. return _hr;
  567. }
  568. inline HRESULT _Recordset::Resync ( enum AffectEnum AffectRecords ) {
  569. HRESULT _hr = raw_Resync(AffectRecords);
  570. if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this));
  571. return _hr;
  572. }
  573. inline HRESULT _Recordset::Update ( const _variant_t & Fields, const _variant_t & Values ) {
  574. HRESULT _hr = raw_Update(Fields, Values);
  575. if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this));
  576. return _hr;
  577. }
  578. inline enum PositionEnum _Recordset::GetAbsolutePage ( ) {
  579. enum PositionEnum _result;
  580. HRESULT _hr = get_AbsolutePage(&_result);
  581. if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this));
  582. return _result;
  583. }
  584. inline void _Recordset::PutAbsolutePage ( enum PositionEnum pl ) {
  585. HRESULT _hr = put_AbsolutePage(pl);
  586. if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this));
  587. }
  588. inline enum EditModeEnum _Recordset::GetEditMode ( ) {
  589. enum EditModeEnum _result;
  590. HRESULT _hr = get_EditMode(&_result);
  591. if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this));
  592. return _result;
  593. }
  594. inline _variant_t _Recordset::GetFilter ( ) {
  595. VARIANT _result;
  596. VariantInit(&_result);
  597. HRESULT _hr = get_Filter(&_result);
  598. if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this));
  599. return _variant_t(_result, false);
  600. }
  601. inline void _Recordset::PutFilter ( const _variant_t & Criteria ) {
  602. HRESULT _hr = put_Filter(Criteria);
  603. if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this));
  604. }
  605. inline long _Recordset::GetPageCount ( ) {
  606. long _result;
  607. HRESULT _hr = get_PageCount(&_result);
  608. if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this));
  609. return _result;
  610. }
  611. inline long _Recordset::GetPageSize ( ) {
  612. long _result;
  613. HRESULT _hr = get_PageSize(&_result);
  614. if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this));
  615. return _result;
  616. }
  617. inline void _Recordset::PutPageSize ( long pl ) {
  618. HRESULT _hr = put_PageSize(pl);
  619. if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this));
  620. }
  621. inline _bstr_t _Recordset::GetSort ( ) {
  622. BSTR _result;
  623. HRESULT _hr = get_Sort(&_result);
  624. if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this));
  625. return _bstr_t(_result, false);
  626. }
  627. inline void _Recordset::PutSort ( _bstr_t Criteria ) {
  628. HRESULT _hr = put_Sort(Criteria);
  629. if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this));
  630. }
  631. inline long _Recordset::GetStatus ( ) {
  632. long _result;
  633. HRESULT _hr = get_Status(&_result);
  634. if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this));
  635. return _result;
  636. }
  637. inline long _Recordset::GetState ( ) {
  638. long _result;
  639. HRESULT _hr = get_State(&_result);
  640. if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this));
  641. return _result;
  642. }
  643. inline _RecordsetPtr _Recordset::Clone ( ) {
  644. struct _Recordset * _result;
  645. HRESULT _hr = raw_Clone(&_result);
  646. if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this));
  647. return _RecordsetPtr(_result, false);
  648. }
  649. inline HRESULT _Recordset::UpdateBatch ( enum AffectEnum AffectRecords ) {
  650. HRESULT _hr = raw_UpdateBatch(AffectRecords);
  651. if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this));
  652. return _hr;
  653. }
  654. inline HRESULT _Recordset::CancelBatch ( enum AffectEnum AffectRecords ) {
  655. HRESULT _hr = raw_CancelBatch(AffectRecords);
  656. if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this));
  657. return _hr;
  658. }
  659. inline enum CursorLocationEnum _Recordset::GetCursorLocation ( ) {
  660. enum CursorLocationEnum _result;
  661. HRESULT _hr = get_CursorLocation(&_result);
  662. if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this));
  663. return _result;
  664. }
  665. inline void _Recordset::PutCursorLocation ( enum CursorLocationEnum plCursorLoc ) {
  666. HRESULT _hr = put_CursorLocation(plCursorLoc);
  667. if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this));
  668. }
  669. inline _RecordsetPtr _Recordset::NextRecordset ( VARIANT * RecordsAffected ) {
  670. struct _Recordset * _result;
  671. HRESULT _hr = raw_NextRecordset(RecordsAffected, &_result);
  672. if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this));
  673. return _RecordsetPtr(_result, false);
  674. }
  675. inline VARIANT_BOOL _Recordset::Supports ( enum CursorOptionEnum CursorOptions ) {
  676. VARIANT_BOOL _result;
  677. HRESULT _hr = raw_Supports(CursorOptions, &_result);
  678. if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this));
  679. return _result;
  680. }
  681. inline _variant_t _Recordset::GetCollect ( const _variant_t & Index ) {
  682. VARIANT _result;
  683. VariantInit(&_result);
  684. HRESULT _hr = get_Collect(Index, &_result);
  685. if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this));
  686. return _variant_t(_result, false);
  687. }
  688. inline void _Recordset::PutCollect ( const _variant_t & Index, const _variant_t & pvar ) {
  689. HRESULT _hr = put_Collect(Index, pvar);
  690. if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this));
  691. }
  692. inline enum MarshalOptionsEnum _Recordset::GetMarshalOptions ( ) {
  693. enum MarshalOptionsEnum _result;
  694. HRESULT _hr = get_MarshalOptions(&_result);
  695. if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this));
  696. return _result;
  697. }
  698. inline void _Recordset::PutMarshalOptions ( enum MarshalOptionsEnum peMarshal ) {
  699. HRESULT _hr = put_MarshalOptions(peMarshal);
  700. if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this));
  701. }
  702. inline HRESULT _Recordset::Find ( _bstr_t Criteria, long SkipRecords, SearchDirectionEnum SearchDirection, const _variant_t & Start ) {
  703. HRESULT _hr = raw_Find(Criteria, SkipRecords, SearchDirection, Start);
  704. if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this));
  705. return _hr;
  706. }
  707. //
  708. // interface Fields wrapper method implementations
  709. //
  710. inline FieldPtr Fields::GetItem ( const _variant_t & Index ) {
  711. struct Field * _result;
  712. HRESULT _hr = get_Item(Index, &_result);
  713. if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this));
  714. return FieldPtr(_result, false);
  715. }
  716. //
  717. // interface Field wrapper method implementations
  718. //
  719. inline long Field::GetActualSize ( ) {
  720. long _result;
  721. HRESULT _hr = get_ActualSize(&_result);
  722. if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this));
  723. return _result;
  724. }
  725. inline long Field::GetAttributes ( ) {
  726. long _result;
  727. HRESULT _hr = get_Attributes(&_result);
  728. if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this));
  729. return _result;
  730. }
  731. inline long Field::GetDefinedSize ( ) {
  732. long _result;
  733. HRESULT _hr = get_DefinedSize(&_result);
  734. if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this));
  735. return _result;
  736. }
  737. inline _bstr_t Field::GetName ( ) {
  738. BSTR _result;
  739. HRESULT _hr = get_Name(&_result);
  740. if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this));
  741. return _bstr_t(_result, false);
  742. }
  743. inline enum DataTypeEnum Field::GetType ( ) {
  744. enum DataTypeEnum _result;
  745. HRESULT _hr = get_Type(&_result);
  746. if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this));
  747. return _result;
  748. }
  749. inline _variant_t Field::GetValue ( ) {
  750. VARIANT _result;
  751. VariantInit(&_result);
  752. HRESULT _hr = get_Value(&_result);
  753. if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this));
  754. return _variant_t(_result, false);
  755. }
  756. inline void Field::PutValue ( const _variant_t & pvar ) {
  757. HRESULT _hr = put_Value(pvar);
  758. if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this));
  759. }
  760. inline unsigned char Field::GetPrecision ( ) {
  761. unsigned char _result;
  762. HRESULT _hr = get_Precision(&_result);
  763. if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this));
  764. return _result;
  765. }
  766. inline unsigned char Field::GetNumericScale ( ) {
  767. unsigned char _result;
  768. HRESULT _hr = get_NumericScale(&_result);
  769. if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this));
  770. return _result;
  771. }
  772. inline HRESULT Field::AppendChunk ( const _variant_t & Data ) {
  773. HRESULT _hr = raw_AppendChunk(Data);
  774. if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this));
  775. return _hr;
  776. }
  777. inline _variant_t Field::GetChunk ( long Length ) {
  778. VARIANT _result;
  779. VariantInit(&_result);
  780. HRESULT _hr = raw_GetChunk(Length, &_result);
  781. if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this));
  782. return _variant_t(_result, false);
  783. }
  784. inline _variant_t Field::GetOriginalValue ( ) {
  785. VARIANT _result;
  786. VariantInit(&_result);
  787. HRESULT _hr = get_OriginalValue(&_result);
  788. if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this));
  789. return _variant_t(_result, false);
  790. }
  791. inline _variant_t Field::GetUnderlyingValue ( ) {
  792. VARIANT _result;
  793. VariantInit(&_result);
  794. HRESULT _hr = get_UnderlyingValue(&_result);
  795. if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this));
  796. return _variant_t(_result, false);
  797. }
  798. //
  799. // interface _Parameter wrapper method implementations
  800. //
  801. inline _bstr_t _Parameter::GetName ( ) {
  802. BSTR _result;
  803. HRESULT _hr = get_Name(&_result);
  804. if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this));
  805. return _bstr_t(_result, false);
  806. }
  807. inline void _Parameter::PutName ( _bstr_t pbstr ) {
  808. HRESULT _hr = put_Name(pbstr);
  809. if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this));
  810. }
  811. inline _variant_t _Parameter::GetValue ( ) {
  812. VARIANT _result;
  813. VariantInit(&_result);
  814. HRESULT _hr = get_Value(&_result);
  815. if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this));
  816. return _variant_t(_result, false);
  817. }
  818. inline void _Parameter::PutValue ( const _variant_t & pvar ) {
  819. HRESULT _hr = put_Value(pvar);
  820. if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this));
  821. }
  822. inline enum DataTypeEnum _Parameter::GetType ( ) {
  823. enum DataTypeEnum _result;
  824. HRESULT _hr = get_Type(&_result);
  825. if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this));
  826. return _result;
  827. }
  828. inline void _Parameter::PutType ( enum DataTypeEnum psDataType ) {
  829. HRESULT _hr = put_Type(psDataType);
  830. if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this));
  831. }
  832. inline void _Parameter::PutDirection ( enum ParameterDirectionEnum plParmDirection ) {
  833. HRESULT _hr = put_Direction(plParmDirection);
  834. if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this));
  835. }
  836. inline enum ParameterDirectionEnum _Parameter::GetDirection ( ) {
  837. enum ParameterDirectionEnum _result;
  838. HRESULT _hr = get_Direction(&_result);
  839. if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this));
  840. return _result;
  841. }
  842. inline void _Parameter::PutPrecision ( unsigned char pbPrecision ) {
  843. HRESULT _hr = put_Precision(pbPrecision);
  844. if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this));
  845. }
  846. inline unsigned char _Parameter::GetPrecision ( ) {
  847. unsigned char _result;
  848. HRESULT _hr = get_Precision(&_result);
  849. if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this));
  850. return _result;
  851. }
  852. inline void _Parameter::PutNumericScale ( unsigned char pbScale ) {
  853. HRESULT _hr = put_NumericScale(pbScale);
  854. if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this));
  855. }
  856. inline unsigned char _Parameter::GetNumericScale ( ) {
  857. unsigned char _result;
  858. HRESULT _hr = get_NumericScale(&_result);
  859. if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this));
  860. return _result;
  861. }
  862. inline void _Parameter::PutSize ( long pl ) {
  863. HRESULT _hr = put_Size(pl);
  864. if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this));
  865. }
  866. inline long _Parameter::GetSize ( ) {
  867. long _result;
  868. HRESULT _hr = get_Size(&_result);
  869. if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this));
  870. return _result;
  871. }
  872. inline HRESULT _Parameter::AppendChunk ( const _variant_t & Val ) {
  873. HRESULT _hr = raw_AppendChunk(Val);
  874. if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this));
  875. return _hr;
  876. }
  877. inline long _Parameter::GetAttributes ( ) {
  878. long _result;
  879. HRESULT _hr = get_Attributes(&_result);
  880. if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this));
  881. return _result;
  882. }
  883. inline void _Parameter::PutAttributes ( long plParmAttribs ) {
  884. HRESULT _hr = put_Attributes(plParmAttribs);
  885. if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this));
  886. }
  887. //
  888. // interface Parameters wrapper method implementations
  889. //
  890. inline _ParameterPtr Parameters::GetItem ( const _variant_t & Index ) {
  891. struct _Parameter * _result;
  892. HRESULT _hr = get_Item(Index, &_result);
  893. if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this));
  894. return _ParameterPtr(_result, false);
  895. }
  896. //
  897. // interface ADOConnectionConstruction wrapper method implementations
  898. //
  899. inline IUnknownPtr ADOConnectionConstruction::GetDSO ( ) {
  900. IUnknown * _result;
  901. HRESULT _hr = get_DSO(&_result);
  902. if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this));
  903. return IUnknownPtr(_result, false);
  904. }
  905. inline IUnknownPtr ADOConnectionConstruction::GetSession ( ) {
  906. IUnknown * _result;
  907. HRESULT _hr = get_Session(&_result);
  908. if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this));
  909. return IUnknownPtr(_result, false);
  910. }
  911. //
  912. // interface ADORecordsetConstruction wrapper method implementations
  913. //
  914. inline IUnknownPtr ADORecordsetConstruction::GetRowset ( ) {
  915. IUnknown * _result;
  916. HRESULT _hr = get_Rowset(&_result);
  917. if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this));
  918. return IUnknownPtr(_result, false);
  919. }
  920. inline void ADORecordsetConstruction::PutRowset ( IUnknown * ppRowset ) {
  921. HRESULT _hr = put_Rowset(ppRowset);
  922. if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this));
  923. }
  924. inline long ADORecordsetConstruction::GetChapter ( ) {
  925. long _result;
  926. HRESULT _hr = get_Chapter(&_result);
  927. if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this));
  928. return _result;
  929. }
  930. inline void ADORecordsetConstruction::PutChapter ( long plChapter ) {
  931. HRESULT _hr = put_Chapter(plChapter);
  932. if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this));
  933. }
  934. inline IUnknownPtr ADORecordsetConstruction::GetRowPosition ( ) {
  935. IUnknown * _result;
  936. HRESULT _hr = get_RowPosition(&_result);
  937. if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this));
  938. return IUnknownPtr(_result, false);
  939. }
  940. inline void ADORecordsetConstruction::PutRowPosition ( IUnknown * ppRowPos ) {
  941. HRESULT _hr = put_RowPosition(ppRowPos);
  942. if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this));
  943. }