source: Daodan/MSYS2/mingw32/i686-w64-mingw32/include/adoint.h@ 1166

Last change on this file since 1166 was 1166, checked in by rossy, 3 years ago

Daodan: Replace MinGW build env with an up-to-date MSYS2 env

File size: 243.0 KB
Line 
1/**
2 * This file is part of the mingw-w64 runtime package.
3 * No warranty is given; refer to the file DISCLAIMER within this package.
4 */
5
6#if !defined (NTDDI_VERSION) || (NTDDI_VERSION < 0x06020000)
7#include "adoint_backcompat.h"
8#else
9
10#ifndef _ADOINT_H_
11#define _ADOINT_H_
12
13#ifndef _INC_TCHAR
14#include <tchar.h>
15#endif
16
17#ifndef DECLSPEC_UUID
18#define DECLSPEC_UUID(x)
19#endif
20
21#ifndef __REQUIRED_RPCNDR_H_VERSION__
22#define __REQUIRED_RPCNDR_H_VERSION__ 500
23#endif
24
25#ifndef __REQUIRED_RPCSAL_H_VERSION__
26#define __REQUIRED_RPCSAL_H_VERSION__ 100
27#endif
28#include "rpc.h"
29#include "rpcndr.h"
30#ifndef __RPCNDR_H_VERSION__
31#error this stub requires an updated version of <rpcndr.h>
32#endif
33#ifndef __ado10_h__
34#define __ado10_h__
35
36#ifndef ___ADOCollection_FWD_DEFINED__
37#define ___ADOCollection_FWD_DEFINED__
38typedef interface _ADOCollection _ADOCollection;
39#endif
40#ifndef ___ADODynaCollection_FWD_DEFINED__
41#define ___ADODynaCollection_FWD_DEFINED__
42typedef interface _ADODynaCollection _ADODynaCollection;
43#endif
44#ifndef ___ADO_FWD_DEFINED__
45#define ___ADO_FWD_DEFINED__
46typedef interface _ADO _ADO;
47#endif
48#ifndef __Error_FWD_DEFINED__
49#define __Error_FWD_DEFINED__
50typedef interface ADOError Error;
51#endif
52#ifndef __Errors_FWD_DEFINED__
53#define __Errors_FWD_DEFINED__
54typedef interface ADOErrors Errors;
55#endif
56#ifndef __Command15_FWD_DEFINED__
57#define __Command15_FWD_DEFINED__
58typedef interface Command15 Command15;
59#endif
60#ifndef __Command25_FWD_DEFINED__
61#define __Command25_FWD_DEFINED__
62typedef interface Command25 Command25;
63#endif
64#ifndef ___Command_FWD_DEFINED__
65#define ___Command_FWD_DEFINED__
66typedef interface _ADOCommand _Command;
67#endif
68#ifndef __ConnectionEventsVt_FWD_DEFINED__
69#define __ConnectionEventsVt_FWD_DEFINED__
70typedef interface ConnectionEventsVt ConnectionEventsVt;
71#endif
72#ifndef __RecordsetEventsVt_FWD_DEFINED__
73#define __RecordsetEventsVt_FWD_DEFINED__
74typedef interface RecordsetEventsVt RecordsetEventsVt;
75#endif
76#ifndef __ConnectionEvents_FWD_DEFINED__
77#define __ConnectionEvents_FWD_DEFINED__
78typedef interface ConnectionEvents ConnectionEvents;
79#endif
80#ifndef __RecordsetEvents_FWD_DEFINED__
81#define __RecordsetEvents_FWD_DEFINED__
82typedef interface RecordsetEvents RecordsetEvents;
83#endif
84#ifndef __Connection15_FWD_DEFINED__
85#define __Connection15_FWD_DEFINED__
86typedef interface Connection15 Connection15;
87#endif
88#ifndef ___Connection_FWD_DEFINED__
89#define ___Connection_FWD_DEFINED__
90typedef interface _ADOConnection _Connection;
91#endif
92#ifndef __ADOConnectionConstruction15_FWD_DEFINED__
93#define __ADOConnectionConstruction15_FWD_DEFINED__
94typedef interface ADOConnectionConstruction15 ADOConnectionConstruction15;
95#endif
96#ifndef __ADOConnectionConstruction_FWD_DEFINED__
97#define __ADOConnectionConstruction_FWD_DEFINED__
98typedef interface ADOConnectionConstruction ADOConnectionConstruction;
99#endif
100#ifndef __Connection_FWD_DEFINED__
101#define __Connection_FWD_DEFINED__
102#ifdef __cplusplus
103typedef class ADOConnection Connection;
104#else
105typedef struct ADOConnection Connection;
106#endif
107#endif
108#ifndef ___Record_FWD_DEFINED__
109#define ___Record_FWD_DEFINED__
110typedef interface _ADORecord _Record;
111#endif
112#ifndef __Record_FWD_DEFINED__
113#define __Record_FWD_DEFINED__
114#ifdef __cplusplus
115typedef class ADORecord Record;
116#else
117typedef struct ADORecord Record;
118#endif
119#endif
120#ifndef ___Stream_FWD_DEFINED__
121#define ___Stream_FWD_DEFINED__
122typedef interface _ADOStream _Stream;
123#endif
124#ifndef __Stream_FWD_DEFINED__
125#define __Stream_FWD_DEFINED__
126#ifdef __cplusplus
127typedef class ADOStream Stream;
128#else
129typedef struct ADOStream Stream;
130#endif
131#endif
132#ifndef __ADORecordConstruction_FWD_DEFINED__
133#define __ADORecordConstruction_FWD_DEFINED__
134typedef interface ADORecordConstruction ADORecordConstruction;
135#endif
136#ifndef __ADOStreamConstruction_FWD_DEFINED__
137#define __ADOStreamConstruction_FWD_DEFINED__
138typedef interface ADOStreamConstruction ADOStreamConstruction;
139#endif
140#ifndef __ADOCommandConstruction_FWD_DEFINED__
141#define __ADOCommandConstruction_FWD_DEFINED__
142typedef interface ADOCommandConstruction ADOCommandConstruction;
143#endif
144#ifndef __Command_FWD_DEFINED__
145#define __Command_FWD_DEFINED__
146#ifdef __cplusplus
147typedef class ADOCommand Command;
148#else
149typedef struct ADOCommand Command;
150#endif
151#endif
152#ifndef __Recordset_FWD_DEFINED__
153#define __Recordset_FWD_DEFINED__
154#ifdef __cplusplus
155typedef class ADORecordset Recordset;
156#else
157typedef struct ADORecordset Recordset;
158#endif
159#endif
160#ifndef __Recordset15_FWD_DEFINED__
161#define __Recordset15_FWD_DEFINED__
162typedef interface Recordset15 Recordset15;
163#endif
164#ifndef __Recordset20_FWD_DEFINED__
165#define __Recordset20_FWD_DEFINED__
166typedef interface Recordset20 Recordset20;
167#endif
168#ifndef __Recordset21_FWD_DEFINED__
169#define __Recordset21_FWD_DEFINED__
170typedef interface Recordset21 Recordset21;
171#endif
172#ifndef ___Recordset_FWD_DEFINED__
173#define ___Recordset_FWD_DEFINED__
174typedef interface _ADORecordset _Recordset;
175#endif
176#ifndef __ADORecordsetConstruction_FWD_DEFINED__
177#define __ADORecordsetConstruction_FWD_DEFINED__
178typedef interface ADORecordsetConstruction ADORecordsetConstruction;
179#endif
180#ifndef __Field15_FWD_DEFINED__
181#define __Field15_FWD_DEFINED__
182typedef interface Field15 Field15;
183#endif
184#ifndef __Field20_FWD_DEFINED__
185#define __Field20_FWD_DEFINED__
186typedef interface Field20 Field20;
187#endif
188#ifndef __Field_FWD_DEFINED__
189#define __Field_FWD_DEFINED__
190typedef interface ADOField Field;
191#endif
192#ifndef __Fields15_FWD_DEFINED__
193#define __Fields15_FWD_DEFINED__
194typedef interface Fields15 Fields15;
195#endif
196#ifndef __Fields20_FWD_DEFINED__
197#define __Fields20_FWD_DEFINED__
198typedef interface Fields20 Fields20;
199#endif
200#ifndef __Fields_FWD_DEFINED__
201#define __Fields_FWD_DEFINED__
202typedef interface ADOFields Fields;
203#endif
204#ifndef ___Parameter_FWD_DEFINED__
205#define ___Parameter_FWD_DEFINED__
206typedef interface _ADOParameter _Parameter;
207#endif
208#ifndef __Parameter_FWD_DEFINED__
209#define __Parameter_FWD_DEFINED__
210#ifdef __cplusplus
211typedef class ADOParameter Parameter;
212#else
213typedef struct ADOParameter Parameter;
214#endif
215#endif
216#ifndef __Parameters_FWD_DEFINED__
217#define __Parameters_FWD_DEFINED__
218typedef interface ADOParameters Parameters;
219#endif
220#ifndef __Property_FWD_DEFINED__
221#define __Property_FWD_DEFINED__
222typedef interface ADOProperty Property;
223#endif
224#ifndef __Properties_FWD_DEFINED__
225#define __Properties_FWD_DEFINED__
226typedef interface ADOProperties Properties;
227#endif
228#ifdef __cplusplus
229extern "C" {
230#endif
231
232#ifdef _WIN64
233
234 typedef LONGLONG ADO_LONGPTR;
235#else
236
237 typedef LONG ADO_LONGPTR;
238#endif
239 extern RPC_IF_HANDLE __MIDL_itf_ado10_0000_0000_v0_0_c_ifspec;
240 extern RPC_IF_HANDLE __MIDL_itf_ado10_0000_0000_v0_0_s_ifspec;
241#ifndef __ADODB_LIBRARY_DEFINED__
242#define __ADODB_LIBRARY_DEFINED__
243
244 typedef DECLSPEC_UUID ("0000051B-0000-0010-8000-00AA006D2EA4")
245 enum CursorTypeEnum {
246 adOpenUnspecified = -1,
247 adOpenForwardOnly = 0,
248 adOpenKeyset = 1,
249 adOpenDynamic = 2,
250 adOpenStatic = 3
251 } CursorTypeEnum;
252 typedef DECLSPEC_UUID ("0000051C-0000-0010-8000-00AA006D2EA4")
253 enum CursorOptionEnum {
254 adHoldRecords = 0x100,
255 adMovePrevious = 0x200,
256 adAddNew = 0x1000400,
257 adDelete = 0x1000800,
258 adUpdate = 0x1008000,
259 adBookmark = 0x2000,
260 adApproxPosition = 0x4000,
261 adUpdateBatch = 0x10000,
262 adResync = 0x20000,
263 adNotify = 0x40000,
264 adFind = 0x80000,
265 adSeek = 0x400000,
266 adIndex = 0x800000
267 } CursorOptionEnum;
268 typedef DECLSPEC_UUID ("0000051D-0000-0010-8000-00AA006D2EA4")
269 enum LockTypeEnum {
270 adLockUnspecified = -1,
271 adLockReadOnly = 1,
272 adLockPessimistic = 2,
273 adLockOptimistic = 3,
274 adLockBatchOptimistic = 4
275 } LockTypeEnum;
276 typedef DECLSPEC_UUID ("0000051E-0000-0010-8000-00AA006D2EA4")
277 enum ExecuteOptionEnum {
278 adOptionUnspecified = -1,
279 adAsyncExecute = 0x10,
280 adAsyncFetch = 0x20,
281 adAsyncFetchNonBlocking = 0x40,
282 adExecuteNoRecords = 0x80,
283 adExecuteStream = 0x400,
284 adExecuteRecord = 0x800
285 } ExecuteOptionEnum;
286 typedef DECLSPEC_UUID ("00000541-0000-0010-8000-00AA006D2EA4")
287 enum ConnectOptionEnum {
288 adConnectUnspecified = -1,
289 adAsyncConnect = 0x10
290 } ConnectOptionEnum;
291 typedef DECLSPEC_UUID ("00000532-0000-0010-8000-00AA006D2EA4")
292 enum ObjectStateEnum {
293 adStateClosed = 0,
294 adStateOpen = 0x1,
295 adStateConnecting = 0x2,
296 adStateExecuting = 0x4,
297 adStateFetching = 0x8
298 } ObjectStateEnum;
299 typedef DECLSPEC_UUID ("0000052F-0000-0010-8000-00AA006D2EA4")
300 enum CursorLocationEnum {
301 adUseNone = 1,
302 adUseServer = 2,
303 adUseClient = 3,
304 adUseClientBatch = 3
305 } CursorLocationEnum;
306 typedef DECLSPEC_UUID ("0000051F-0000-0010-8000-00AA006D2EA4")
307 enum DataTypeEnum {
308 adEmpty = 0,
309 adTinyInt = 16,
310 adSmallInt = 2,
311 adInteger = 3,
312 adBigInt = 20,
313 adUnsignedTinyInt = 17,
314 adUnsignedSmallInt = 18,
315 adUnsignedInt = 19,
316 adUnsignedBigInt = 21,
317 adSingle = 4,
318 adDouble = 5,
319 adCurrency = 6,
320 adDecimal = 14,
321 adNumeric = 131,
322 adBoolean = 11,
323 adError = 10,
324 adUserDefined = 132,
325 adVariant = 12,
326 adIDispatch = 9,
327 adIUnknown = 13,
328 adGUID = 72,
329 adDate = 7,
330 adDBDate = 133,
331 adDBTime = 134,
332 adDBTimeStamp = 135,
333 adBSTR = 8,
334 adChar = 129,
335 adVarChar = 200,
336 adLongVarChar = 201,
337 adWChar = 130,
338 adVarWChar = 202,
339 adLongVarWChar = 203,
340 adBinary = 128,
341 adVarBinary = 204,
342 adLongVarBinary = 205,
343 adChapter = 136,
344 adFileTime = 64,
345 adPropVariant = 138,
346 adVarNumeric = 139,
347 adArray = 0x2000
348 } DataTypeEnum;
349 typedef DECLSPEC_UUID ("00000525-0000-0010-8000-00AA006D2EA4")
350 enum FieldAttributeEnum {
351 adFldUnspecified = -1,
352 adFldMayDefer = 0x2,
353 adFldUpdatable = 0x4,
354 adFldUnknownUpdatable = 0x8,
355 adFldFixed = 0x10,
356 adFldIsNullable = 0x20,
357 adFldMayBeNull = 0x40,
358 adFldLong = 0x80,
359 adFldRowID = 0x100,
360 adFldRowVersion = 0x200,
361 adFldCacheDeferred = 0x1000,
362 adFldIsChapter = 0x2000,
363 adFldNegativeScale = 0x4000,
364 adFldKeyColumn = 0x8000,
365 adFldIsRowURL = 0x10000,
366 adFldIsDefaultStream = 0x20000,
367 adFldIsCollection = 0x40000
368 } FieldAttributeEnum;
369 typedef DECLSPEC_UUID ("00000526-0000-0010-8000-00AA006D2EA4")
370 enum EditModeEnum {
371 adEditNone = 0,
372 adEditInProgress = 0x1,
373 adEditAdd = 0x2,
374 adEditDelete = 0x4
375 } EditModeEnum;
376 typedef DECLSPEC_UUID ("00000527-0000-0010-8000-00AA006D2EA4")
377 enum RecordStatusEnum {
378 adRecOK = 0,
379 adRecNew = 0x1,
380 adRecModified = 0x2,
381 adRecDeleted = 0x4,
382 adRecUnmodified = 0x8,
383 adRecInvalid = 0x10,
384 adRecMultipleChanges = 0x40,
385 adRecPendingChanges = 0x80,
386 adRecCanceled = 0x100,
387 adRecCantRelease = 0x400,
388 adRecConcurrencyViolation = 0x800,
389 adRecIntegrityViolation = 0x1000,
390 adRecMaxChangesExceeded = 0x2000,
391 adRecObjectOpen = 0x4000,
392 adRecOutOfMemory = 0x8000,
393 adRecPermissionDenied = 0x10000,
394 adRecSchemaViolation = 0x20000,
395 adRecDBDeleted = 0x40000
396 } RecordStatusEnum;
397 typedef DECLSPEC_UUID ("00000542-0000-0010-8000-00AA006D2EA4")
398 enum GetRowsOptionEnum {
399 adGetRowsRest = -1
400 } GetRowsOptionEnum;
401 typedef DECLSPEC_UUID ("00000528-0000-0010-8000-00AA006D2EA4")
402 enum PositionEnum {
403 adPosUnknown = -1,
404 adPosBOF = -2,
405 adPosEOF = -3
406 } PositionEnum;
407 typedef
408 enum BookmarkEnum {
409 adBookmarkCurrent = 0,
410 adBookmarkFirst = 1,
411 adBookmarkLast = 2
412 } BookmarkEnum;
413 typedef DECLSPEC_UUID ("00000540-0000-0010-8000-00AA006D2EA4")
414 enum MarshalOptionsEnum {
415 adMarshalAll = 0,
416 adMarshalModifiedOnly = 1
417 } MarshalOptionsEnum;
418 typedef DECLSPEC_UUID ("00000543-0000-0010-8000-00AA006D2EA4")
419 enum AffectEnum {
420 adAffectCurrent = 1,
421 adAffectGroup = 2,
422 adAffectAll = 3,
423 adAffectAllChapters = 4
424 } AffectEnum;
425 typedef DECLSPEC_UUID ("00000544-0000-0010-8000-00AA006D2EA4")
426 enum ResyncEnum {
427 adResyncUnderlyingValues = 1,
428 adResyncAllValues = 2
429 } ResyncEnum;
430 typedef DECLSPEC_UUID ("00000545-0000-0010-8000-00AA006D2EA4")
431 enum CompareEnum {
432 adCompareLessThan = 0,
433 adCompareEqual = 1,
434 adCompareGreaterThan = 2,
435 adCompareNotEqual = 3,
436 adCompareNotComparable = 4
437 } CompareEnum;
438 typedef DECLSPEC_UUID ("00000546-0000-0010-8000-00AA006D2EA4")
439 enum FilterGroupEnum {
440 adFilterNone = 0,
441 adFilterPendingRecords = 1,
442 adFilterAffectedRecords = 2,
443 adFilterFetchedRecords = 3,
444 adFilterPredicate = 4,
445 adFilterConflictingRecords = 5
446 } FilterGroupEnum;
447 typedef DECLSPEC_UUID ("00000547-0000-0010-8000-00AA006D2EA4")
448 enum SearchDirectionEnum {
449 adSearchForward = 1,
450 adSearchBackward = -1
451 } SearchDirectionEnum;
452 typedef SearchDirectionEnum SearchDirection;
453 typedef DECLSPEC_UUID ("00000548-0000-0010-8000-00AA006D2EA4")
454 enum PersistFormatEnum {
455 adPersistADTG = 0,
456 adPersistXML = 1
457 } PersistFormatEnum;
458 typedef DECLSPEC_UUID ("00000549-0000-0010-8000-00AA006D2EA4")
459 enum StringFormatEnum {
460 adClipString = 2
461 } StringFormatEnum;
462 typedef DECLSPEC_UUID ("00000520-0000-0010-8000-00AA006D2EA4")
463 enum ConnectPromptEnum {
464 adPromptAlways = 1,
465 adPromptComplete = 2,
466 adPromptCompleteRequired = 3,
467 adPromptNever = 4
468 } ConnectPromptEnum;
469 typedef DECLSPEC_UUID ("00000521-0000-0010-8000-00AA006D2EA4")
470 enum ConnectModeEnum {
471 adModeUnknown = 0,
472 adModeRead = 1,
473 adModeWrite = 2,
474 adModeReadWrite = 3,
475 adModeShareDenyRead = 4,
476 adModeShareDenyWrite = 8,
477 adModeShareExclusive = 0xc,
478 adModeShareDenyNone = 0x10,
479 adModeRecursive = 0x400000
480 } ConnectModeEnum;
481 typedef DECLSPEC_UUID ("00000570-0000-0010-8000-00AA006D2EA4")
482 enum RecordCreateOptionsEnum {
483 adCreateCollection = 0x2000,
484 adCreateStructDoc = 0x80000000,
485 adCreateNonCollection = 0,
486 adOpenIfExists = 0x2000000,
487 adCreateOverwrite = 0x4000000,
488 adFailIfNotExists = -1
489 } RecordCreateOptionsEnum;
490 typedef DECLSPEC_UUID ("00000571-0000-0010-8000-00AA006D2EA4")
491 enum RecordOpenOptionsEnum {
492 adOpenRecordUnspecified = -1,
493 adOpenSource = 0x800000,
494 adOpenOutput = 0x800000,
495 adOpenAsync = 0x1000,
496 adDelayFetchStream = 0x4000,
497 adDelayFetchFields = 0x8000,
498 adOpenExecuteCommand = 0x10000
499 } RecordOpenOptionsEnum;
500 typedef DECLSPEC_UUID ("00000523-0000-0010-8000-00AA006D2EA4")
501 enum IsolationLevelEnum {
502 adXactUnspecified = 0xffffffff,
503 adXactChaos = 0x10,
504 adXactReadUncommitted = 0x100,
505 adXactBrowse = 0x100,
506 adXactCursorStability = 0x1000,
507 adXactReadCommitted = 0x1000,
508 adXactRepeatableRead = 0x10000,
509 adXactSerializable = 0x100000,
510 adXactIsolated = 0x100000
511 } IsolationLevelEnum;
512 typedef DECLSPEC_UUID ("00000524-0000-0010-8000-00AA006D2EA4")
513 enum XactAttributeEnum {
514 adXactCommitRetaining = 0x20000,
515 adXactAbortRetaining = 0x40000,
516 adXactAsyncPhaseOne = 0x80000,
517 adXactSyncPhaseOne = 0x100000
518 } XactAttributeEnum;
519 typedef DECLSPEC_UUID ("00000529-0000-0010-8000-00AA006D2EA4")
520 enum PropertyAttributesEnum {
521 adPropNotSupported = 0,
522 adPropRequired = 0x1,
523 adPropOptional = 0x2,
524 adPropRead = 0x200,
525 adPropWrite = 0x400
526 } PropertyAttributesEnum;
527 typedef DECLSPEC_UUID ("0000052A-0000-0010-8000-00AA006D2EA4")
528 enum ErrorValueEnum {
529 adErrProviderFailed = MAKE_HRESULT (SEVERITY_ERROR, FACILITY_CONTROL, 0xbb8),
530 adErrInvalidArgument = MAKE_HRESULT (SEVERITY_ERROR, FACILITY_CONTROL, 0xbb9),
531 adErrOpeningFile = MAKE_HRESULT (SEVERITY_ERROR, FACILITY_CONTROL, 0xbba),
532 adErrReadFile = MAKE_HRESULT (SEVERITY_ERROR, FACILITY_CONTROL, 0xbbb),
533 adErrWriteFile = MAKE_HRESULT (SEVERITY_ERROR, FACILITY_CONTROL, 0xbbc),
534 adErrNoCurrentRecord = MAKE_HRESULT (SEVERITY_ERROR, FACILITY_CONTROL, 0xbcd),
535 adErrIllegalOperation = MAKE_HRESULT (SEVERITY_ERROR, FACILITY_CONTROL, 0xc93),
536 adErrCantChangeProvider = MAKE_HRESULT (SEVERITY_ERROR, FACILITY_CONTROL, 0xc94),
537 adErrInTransaction = MAKE_HRESULT (SEVERITY_ERROR, FACILITY_CONTROL, 0xcae),
538 adErrFeatureNotAvailable = MAKE_HRESULT (SEVERITY_ERROR, FACILITY_CONTROL, 0xcb3),
539 adErrItemNotFound = MAKE_HRESULT (SEVERITY_ERROR, FACILITY_CONTROL, 0xcc1),
540 adErrObjectInCollection = MAKE_HRESULT (SEVERITY_ERROR, FACILITY_CONTROL, 0xd27),
541 adErrObjectNotSet = MAKE_HRESULT (SEVERITY_ERROR, FACILITY_CONTROL, 0xd5c),
542 adErrDataConversion = MAKE_HRESULT (SEVERITY_ERROR, FACILITY_CONTROL, 0xd5d),
543 adErrObjectClosed = MAKE_HRESULT (SEVERITY_ERROR, FACILITY_CONTROL, 0xe78),
544 adErrObjectOpen = MAKE_HRESULT (SEVERITY_ERROR, FACILITY_CONTROL, 0xe79),
545 adErrProviderNotFound = MAKE_HRESULT (SEVERITY_ERROR, FACILITY_CONTROL, 0xe7a),
546 adErrBoundToCommand = MAKE_HRESULT (SEVERITY_ERROR, FACILITY_CONTROL, 0xe7b),
547 adErrInvalidParamInfo = MAKE_HRESULT (SEVERITY_ERROR, FACILITY_CONTROL, 0xe7c),
548 adErrInvalidConnection = MAKE_HRESULT (SEVERITY_ERROR, FACILITY_CONTROL, 0xe7d),
549 adErrNotReentrant = MAKE_HRESULT (SEVERITY_ERROR, FACILITY_CONTROL, 0xe7e),
550 adErrStillExecuting = MAKE_HRESULT (SEVERITY_ERROR, FACILITY_CONTROL, 0xe7f),
551 adErrOperationCancelled = MAKE_HRESULT (SEVERITY_ERROR, FACILITY_CONTROL, 0xe80),
552 adErrStillConnecting = MAKE_HRESULT (SEVERITY_ERROR, FACILITY_CONTROL, 0xe81),
553 adErrInvalidTransaction = MAKE_HRESULT (SEVERITY_ERROR, FACILITY_CONTROL, 0xe82),
554 adErrNotExecuting = MAKE_HRESULT (SEVERITY_ERROR, FACILITY_CONTROL, 0xe83),
555 adErrUnsafeOperation = MAKE_HRESULT (SEVERITY_ERROR, FACILITY_CONTROL, 0xe84),
556 adwrnSecurityDialog = MAKE_HRESULT (SEVERITY_ERROR, FACILITY_CONTROL, 0xe85),
557 adwrnSecurityDialogHeader = MAKE_HRESULT (SEVERITY_ERROR, FACILITY_CONTROL, 0xe86),
558 adErrIntegrityViolation = MAKE_HRESULT (SEVERITY_ERROR, FACILITY_CONTROL, 0xe87),
559 adErrPermissionDenied = MAKE_HRESULT (SEVERITY_ERROR, FACILITY_CONTROL, 0xe88),
560 adErrDataOverflow = MAKE_HRESULT (SEVERITY_ERROR, FACILITY_CONTROL, 0xe89),
561 adErrSchemaViolation = MAKE_HRESULT (SEVERITY_ERROR, FACILITY_CONTROL, 0xe8a),
562 adErrSignMismatch = MAKE_HRESULT (SEVERITY_ERROR, FACILITY_CONTROL, 0xe8b),
563 adErrCantConvertvalue = MAKE_HRESULT (SEVERITY_ERROR, FACILITY_CONTROL, 0xe8c),
564 adErrCantCreate = MAKE_HRESULT (SEVERITY_ERROR, FACILITY_CONTROL, 0xe8d),
565 adErrColumnNotOnThisRow = MAKE_HRESULT (SEVERITY_ERROR, FACILITY_CONTROL, 0xe8e),
566 adErrURLDoesNotExist = MAKE_HRESULT (SEVERITY_ERROR, FACILITY_CONTROL, 0xe8f),
567 adErrTreePermissionDenied = MAKE_HRESULT (SEVERITY_ERROR, FACILITY_CONTROL, 0xe90),
568 adErrInvalidURL = MAKE_HRESULT (SEVERITY_ERROR, FACILITY_CONTROL, 0xe91),
569 adErrResourceLocked = MAKE_HRESULT (SEVERITY_ERROR, FACILITY_CONTROL, 0xe92),
570 adErrResourceExists = MAKE_HRESULT (SEVERITY_ERROR, FACILITY_CONTROL, 0xe93),
571 adErrCannotComplete = MAKE_HRESULT (SEVERITY_ERROR, FACILITY_CONTROL, 0xe94),
572 adErrVolumeNotFound = MAKE_HRESULT (SEVERITY_ERROR, FACILITY_CONTROL, 0xe95),
573 adErrOutOfSpace = MAKE_HRESULT (SEVERITY_ERROR, FACILITY_CONTROL, 0xe96),
574 adErrResourceOutOfScope = MAKE_HRESULT (SEVERITY_ERROR, FACILITY_CONTROL, 0xe97),
575 adErrUnavailable = MAKE_HRESULT (SEVERITY_ERROR, FACILITY_CONTROL, 0xe98),
576 adErrURLNamedRowDoesNotExist = MAKE_HRESULT (SEVERITY_ERROR, FACILITY_CONTROL, 0xe99),
577 adErrDelResOutOfScope = MAKE_HRESULT (SEVERITY_ERROR, FACILITY_CONTROL, 0xe9a),
578 adErrPropInvalidColumn = MAKE_HRESULT (SEVERITY_ERROR, FACILITY_CONTROL, 0xe9b),
579 adErrPropInvalidOption = MAKE_HRESULT (SEVERITY_ERROR, FACILITY_CONTROL, 0xe9c),
580 adErrPropInvalidValue = MAKE_HRESULT (SEVERITY_ERROR, FACILITY_CONTROL, 0xe9d),
581 adErrPropConflicting = MAKE_HRESULT (SEVERITY_ERROR, FACILITY_CONTROL, 0xe9e),
582 adErrPropNotAllSettable = MAKE_HRESULT (SEVERITY_ERROR, FACILITY_CONTROL, 0xe9f),
583 adErrPropNotSet = MAKE_HRESULT (SEVERITY_ERROR, FACILITY_CONTROL, 0xea0),
584 adErrPropNotSettable = MAKE_HRESULT (SEVERITY_ERROR, FACILITY_CONTROL, 0xea1),
585 adErrPropNotSupported = MAKE_HRESULT (SEVERITY_ERROR, FACILITY_CONTROL, 0xea2),
586 adErrCatalogNotSet = MAKE_HRESULT (SEVERITY_ERROR, FACILITY_CONTROL, 0xea3),
587 adErrCantChangeConnection = MAKE_HRESULT (SEVERITY_ERROR, FACILITY_CONTROL, 0xea4),
588 adErrFieldsUpdateFailed = MAKE_HRESULT (SEVERITY_ERROR, FACILITY_CONTROL, 0xea5),
589 adErrDenyNotSupported = MAKE_HRESULT (SEVERITY_ERROR, FACILITY_CONTROL, 0xea6),
590 adErrDenyTypeNotSupported = MAKE_HRESULT (SEVERITY_ERROR, FACILITY_CONTROL, 0xea7),
591 adErrProviderNotSpecified = MAKE_HRESULT (SEVERITY_ERROR, FACILITY_CONTROL, 0xea9),
592 adErrConnectionStringTooLong = MAKE_HRESULT (SEVERITY_ERROR, FACILITY_CONTROL, 0xeaa)
593 } ErrorValueEnum;
594 typedef DECLSPEC_UUID ("0000052B-0000-0010-8000-00AA006D2EA4")
595 enum ParameterAttributesEnum {
596 adParamSigned = 0x10,
597 adParamNullable = 0x40,
598 adParamLong = 0x80
599 } ParameterAttributesEnum;
600 typedef DECLSPEC_UUID ("0000052C-0000-0010-8000-00AA006D2EA4")
601 enum ParameterDirectionEnum {
602 adParamUnknown = 0,
603 adParamInput = 0x1,
604 adParamOutput = 0x2,
605 adParamInputOutput = 0x3,
606 adParamReturnValue = 0x4
607 } ParameterDirectionEnum;
608 typedef DECLSPEC_UUID ("0000052E-0000-0010-8000-00AA006D2EA4")
609 enum CommandTypeEnum {
610 adCmdUnspecified = -1,
611 adCmdUnknown = 0x8,
612 adCmdText = 0x1,
613 adCmdTable = 0x2,
614 adCmdStoredProc = 0x4,
615 adCmdFile = 0x100,
616 adCmdTableDirect = 0x200
617 } CommandTypeEnum;
618 typedef DECLSPEC_UUID ("00000530-0000-0010-8000-00AA006D2EA4")
619 enum EventStatusEnum {
620 adStatusOK = 0x1,
621 adStatusErrorsOccurred = 0x2,
622 adStatusCantDeny = 0x3,
623 adStatusCancel = 0x4,
624 adStatusUnwantedEvent = 0x5
625 } EventStatusEnum;
626 typedef DECLSPEC_UUID ("00000531-0000-0010-8000-00AA006D2EA4")
627 enum EventReasonEnum {
628 adRsnAddNew = 1,
629 adRsnDelete = 2,
630 adRsnUpdate = 3,
631 adRsnUndoUpdate = 4,
632 adRsnUndoAddNew = 5,
633 adRsnUndoDelete = 6,
634 adRsnRequery = 7,
635 adRsnResynch = 8,
636 adRsnClose = 9,
637 adRsnMove = 10,
638 adRsnFirstChange = 11,
639 adRsnMoveFirst = 12,
640 adRsnMoveNext = 13,
641 adRsnMovePrevious = 14,
642 adRsnMoveLast = 15
643 } EventReasonEnum;
644 typedef DECLSPEC_UUID ("00000533-0000-0010-8000-00AA006D2EA4")
645 enum SchemaEnum {
646 adSchemaProviderSpecific = -1,
647 adSchemaAsserts = 0,
648 adSchemaCatalogs = 1,
649 adSchemaCharacterSets = 2,
650 adSchemaCollations = 3,
651 adSchemaColumns = 4,
652 adSchemaCheckConstraints = 5,
653 adSchemaConstraintColumnUsage = 6,
654 adSchemaConstraintTableUsage = 7,
655 adSchemaKeyColumnUsage = 8,
656 adSchemaReferentialContraints = 9,
657 adSchemaReferentialConstraints = 9,
658 adSchemaTableConstraints = 10,
659 adSchemaColumnsDomainUsage = 11,
660 adSchemaIndexes = 12,
661 adSchemaColumnPrivileges = 13,
662 adSchemaTablePrivileges = 14,
663 adSchemaUsagePrivileges = 15,
664 adSchemaProcedures = 16,
665 adSchemaSchemata = 17,
666 adSchemaSQLLanguages = 18,
667 adSchemaStatistics = 19,
668 adSchemaTables = 20,
669 adSchemaTranslations = 21,
670 adSchemaProviderTypes = 22,
671 adSchemaViews = 23,
672 adSchemaViewColumnUsage = 24,
673 adSchemaViewTableUsage = 25,
674 adSchemaProcedureParameters = 26,
675 adSchemaForeignKeys = 27,
676 adSchemaPrimaryKeys = 28,
677 adSchemaProcedureColumns = 29,
678 adSchemaDBInfoKeywords = 30,
679 adSchemaDBInfoLiterals = 31,
680 adSchemaCubes = 32,
681 adSchemaDimensions = 33,
682 adSchemaHierarchies = 34,
683 adSchemaLevels = 35,
684 adSchemaMeasures = 36,
685 adSchemaProperties = 37,
686 adSchemaMembers = 38,
687 adSchemaTrustees = 39,
688 adSchemaFunctions = 40,
689 adSchemaActions = 41,
690 adSchemaCommands = 42,
691 adSchemaSets = 43
692 } SchemaEnum;
693 typedef DECLSPEC_UUID ("0000057E-0000-0010-8000-00AA006D2EA4")
694 enum FieldStatusEnum {
695 adFieldOK = 0,
696 adFieldCantConvertValue = 2,
697 adFieldIsNull = 3,
698 adFieldTruncated = 4,
699 adFieldSignMismatch = 5,
700 adFieldDataOverflow = 6,
701 adFieldCantCreate = 7,
702 adFieldUnavailable = 8,
703 adFieldPermissionDenied = 9,
704 adFieldIntegrityViolation = 10,
705 adFieldSchemaViolation = 11,
706 adFieldBadStatus = 12,
707 adFieldDefault = 13,
708 adFieldIgnore = 15,
709 adFieldDoesNotExist = 16,
710 adFieldInvalidURL = 17,
711 adFieldResourceLocked = 18,
712 adFieldResourceExists = 19,
713 adFieldCannotComplete = 20,
714 adFieldVolumeNotFound = 21,
715 adFieldOutOfSpace = 22,
716 adFieldCannotDeleteSource = 23,
717 adFieldReadOnly = 24,
718 adFieldResourceOutOfScope = 25,
719 adFieldAlreadyExists = 26,
720 adFieldPendingInsert = 0x10000,
721 adFieldPendingDelete = 0x20000,
722 adFieldPendingChange = 0x40000,
723 adFieldPendingUnknown = 0x80000,
724 adFieldPendingUnknownDelete = 0x100000
725 } FieldStatusEnum;
726 typedef DECLSPEC_UUID ("00000552-0000-0010-8000-00AA006D2EA4")
727 enum SeekEnum {
728 adSeekFirstEQ = 0x1,
729 adSeekLastEQ = 0x2,
730 adSeekAfterEQ = 0x4,
731 adSeekAfter = 0x8,
732 adSeekBeforeEQ = 0x10,
733 adSeekBefore = 0x20
734 } SeekEnum;
735#ifndef _COMMON_ADC_AND_ADO_PROPS_
736#define _COMMON_ADC_AND_ADO_PROPS_
737 typedef DECLSPEC_UUID ("0000054A-0000-0010-8000-00AA006D2EA4")
738 enum ADCPROP_UPDATECRITERIA_ENUM {
739 adCriteriaKey = 0,
740 adCriteriaAllCols = 1,
741 adCriteriaUpdCols = 2,
742 adCriteriaTimeStamp = 3
743 } ADCPROP_UPDATECRITERIA_ENUM;
744 typedef DECLSPEC_UUID ("0000054B-0000-0010-8000-00AA006D2EA4")
745 enum ADCPROP_ASYNCTHREADPRIORITY_ENUM {
746 adPriorityLowest = 1,
747 adPriorityBelowNormal = 2,
748 adPriorityNormal = 3,
749 adPriorityAboveNormal = 4,
750 adPriorityHighest = 5
751 } ADCPROP_ASYNCTHREADPRIORITY_ENUM;
752 typedef DECLSPEC_UUID ("00000554-0000-0010-8000-00AA006D2EA4")
753 enum ADCPROP_AUTORECALC_ENUM {
754 adRecalcUpFront = 0,
755 adRecalcAlways = 1
756 } ADCPROP_AUTORECALC_ENUM;
757 typedef DECLSPEC_UUID ("00000553-0000-0010-8000-00AA006D2EA4")
758 enum ADCPROP_UPDATERESYNC_ENUM {
759 adResyncNone = 0,
760 adResyncAutoIncrement = 1,
761 adResyncConflicts = 2,
762 adResyncUpdates = 4,
763 adResyncInserts = 8,
764 adResyncAll = 15
765 } ADCPROP_UPDATERESYNC_ENUM;
766#endif
767 typedef ADCPROP_UPDATERESYNC_ENUM CEResyncEnum;
768 typedef DECLSPEC_UUID ("00000573-0000-0010-8000-00AA006D2EA4")
769 enum MoveRecordOptionsEnum {
770 adMoveUnspecified = -1,
771 adMoveOverWrite = 1,
772 adMoveDontUpdateLinks = 2,
773 adMoveAllowEmulation = 4
774 } MoveRecordOptionsEnum;
775 typedef DECLSPEC_UUID ("00000574-0000-0010-8000-00AA006D2EA4")
776 enum CopyRecordOptionsEnum {
777 adCopyUnspecified = -1,
778 adCopyOverWrite = 1,
779 adCopyAllowEmulation = 4,
780 adCopyNonRecursive = 2
781 } CopyRecordOptionsEnum;
782 typedef DECLSPEC_UUID ("00000576-0000-0010-8000-00AA006D2EA4")
783 enum StreamTypeEnum {
784 adTypeBinary = 1,
785 adTypeText = 2
786 } StreamTypeEnum;
787 typedef DECLSPEC_UUID ("00000577-0000-0010-8000-00AA006D2EA4")
788 enum LineSeparatorEnum {
789 adLF = 10,
790 adCR = 13,
791 adCRLF = -1
792 } LineSeparatorEnum;
793 typedef DECLSPEC_UUID ("0000057A-0000-0010-8000-00AA006D2EA4")
794 enum StreamOpenOptionsEnum {
795 adOpenStreamUnspecified = -1,
796 adOpenStreamAsync = 1,
797 adOpenStreamFromRecord = 4
798 } StreamOpenOptionsEnum;
799 typedef DECLSPEC_UUID ("0000057B-0000-0010-8000-00AA006D2EA4")
800 enum StreamWriteEnum {
801 adWriteChar = 0,
802 adWriteLine = 1,
803 stWriteChar = 0,
804 stWriteLine = 1
805 } StreamWriteEnum;
806 typedef DECLSPEC_UUID ("0000057C-0000-0010-8000-00AA006D2EA4")
807 enum SaveOptionsEnum {
808 adSaveCreateNotExist = 1,
809 adSaveCreateOverWrite = 2
810 } SaveOptionsEnum;
811 typedef
812 enum FieldEnum {
813 adDefaultStream = -1,
814 adRecordURL = -2
815 } FieldEnum;
816 typedef
817 enum StreamReadEnum {
818 adReadAll = -1,
819 adReadLine = -2
820 } StreamReadEnum;
821 typedef DECLSPEC_UUID ("0000057D-0000-0010-8000-00AA006D2EA4")
822 enum RecordTypeEnum {
823 adSimpleRecord = 0,
824 adCollectionRecord = 1,
825 adStructDoc = 2
826 } RecordTypeEnum;
827 EXTERN_C const IID LIBID_ADODB;
828#ifndef ___ADOCollection_INTERFACE_DEFINED__
829#define ___ADOCollection_INTERFACE_DEFINED__
830
831 EXTERN_C const IID IID__ADOCollection;
832#if defined (__cplusplus) && !defined (CINTERFACE)
833
834 MIDL_INTERFACE ("00000512-0000-0010-8000-00AA006D2EA4")
835 _ADOCollection : public IDispatch {
836 public:
837 virtual HRESULT STDMETHODCALLTYPE get_Count (long *c) = 0;
838 virtual HRESULT STDMETHODCALLTYPE _NewEnum (IUnknown **ppvObject) = 0;
839 virtual HRESULT STDMETHODCALLTYPE Refresh (void) = 0;
840 };
841#else
842 typedef struct _ADOCollectionVtbl {
843 BEGIN_INTERFACE HRESULT (STDMETHODCALLTYPE *QueryInterface) (_ADOCollection *This, REFIID riid, _COM_Outptr_ void **ppvObject);
844 ULONG (STDMETHODCALLTYPE *AddRef) (_ADOCollection *This);
845 ULONG (STDMETHODCALLTYPE *Release) (_ADOCollection *This);
846 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount) (_ADOCollection *This, UINT *pctinfo);
847 HRESULT (STDMETHODCALLTYPE *GetTypeInfo) (_ADOCollection *This, UINT iTInfo, LCID lcid, ITypeInfo **ppTInfo);
848 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames) (_ADOCollection *This, REFIID riid, LPOLESTR *rgszNames, UINT cNames, LCID lcid, DISPID *rgDispId);
849 HRESULT (STDMETHODCALLTYPE *Invoke) (_ADOCollection *This, DISPID dispIdMember, REFIID riid, LCID lcid, WORD wFlags, DISPPARAMS *pDispParams, VARIANT *pVarResult, EXCEPINFO *pExcepInfo, UINT *puArgErr);
850 HRESULT (STDMETHODCALLTYPE *get_Count) (_ADOCollection *This, long *c);
851 HRESULT (STDMETHODCALLTYPE *_NewEnum) (_ADOCollection *This, IUnknown **ppvObject);
852 HRESULT (STDMETHODCALLTYPE *Refresh) (_ADOCollection *This);
853 END_INTERFACE
854 } _ADOCollectionVtbl;
855 interface _ADOCollection {
856 CONST_VTBL struct _ADOCollectionVtbl *lpVtbl;
857 };
858#ifdef COBJMACROS
859#define _ADOCollection_QueryInterface(This, riid, ppvObject) ((This)->lpVtbl ->QueryInterface (This, riid, ppvObject))
860#define _ADOCollection_AddRef(This) ((This)->lpVtbl ->AddRef (This))
861#define _ADOCollection_Release(This) ((This)->lpVtbl ->Release (This))
862#define _ADOCollection_GetTypeInfoCount(This, pctinfo) ((This)->lpVtbl ->GetTypeInfoCount (This, pctinfo))
863#define _ADOCollection_GetTypeInfo(This, iTInfo, lcid, ppTInfo) ((This)->lpVtbl ->GetTypeInfo (This, iTInfo, lcid, ppTInfo))
864#define _ADOCollection_GetIDsOfNames(This, riid, rgszNames, cNames, lcid, rgDispId) ((This)->lpVtbl ->GetIDsOfNames (This, riid, rgszNames, cNames, lcid, rgDispId))
865#define _ADOCollection_Invoke(This, dispIdMember, riid, lcid, wFlags, pDispParams, pVarResult, pExcepInfo, puArgErr) ((This)->lpVtbl ->Invoke (This, dispIdMember, riid, lcid, wFlags, pDispParams, pVarResult, pExcepInfo, puArgErr))
866#define _Collection_get_Count(This, c) ((This)->lpVtbl ->get_Count (This, c))
867#define _ADOCollection__NewEnum(This, ppvObject) ((This)->lpVtbl ->_NewEnum (This, ppvObject))
868#define _ADOCollection_Refresh(This) ((This)->lpVtbl ->Refresh (This))
869#endif
870#endif
871#endif
872#ifndef ___ADODynaCollection_INTERFACE_DEFINED__
873#define ___ADODynaCollection_INTERFACE_DEFINED__
874
875 EXTERN_C const IID IID__ADODynaCollection;
876#if defined (__cplusplus) && !defined (CINTERFACE)
877
878 MIDL_INTERFACE ("00000513-0000-0010-8000-00AA006D2EA4")
879 _ADODynaCollection : public _ADOCollection {
880 public:
881 virtual HRESULT STDMETHODCALLTYPE Append (IDispatch *Object) = 0;
882 virtual HRESULT STDMETHODCALLTYPE Delete (VARIANT Index) = 0;
883 };
884#else
885 typedef struct _ADODynaCollectionVtbl {
886 BEGIN_INTERFACE HRESULT (STDMETHODCALLTYPE *QueryInterface) (_ADODynaCollection *This, REFIID riid, _COM_Outptr_ void **ppvObject);
887 ULONG (STDMETHODCALLTYPE *AddRef) (_ADODynaCollection *This);
888 ULONG (STDMETHODCALLTYPE *Release) (_ADODynaCollection *This);
889 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount) (_ADODynaCollection *This, UINT *pctinfo);
890 HRESULT (STDMETHODCALLTYPE *GetTypeInfo) (_ADODynaCollection *This, UINT iTInfo, LCID lcid, ITypeInfo **ppTInfo);
891 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames) (_ADODynaCollection *This, REFIID riid, LPOLESTR *rgszNames, UINT cNames, LCID lcid, DISPID *rgDispId);
892 HRESULT (STDMETHODCALLTYPE *Invoke) (_ADODynaCollection *This, DISPID dispIdMember, REFIID riid, LCID lcid, WORD wFlags, DISPPARAMS *pDispParams, VARIANT *pVarResult, EXCEPINFO *pExcepInfo, UINT *puArgErr);
893 HRESULT (STDMETHODCALLTYPE *get_Count) (_ADODynaCollection *This, long *c);
894 HRESULT (STDMETHODCALLTYPE *_NewEnum) (_ADODynaCollection *This, IUnknown **ppvObject);
895 HRESULT (STDMETHODCALLTYPE *Refresh) (_ADODynaCollection *This);
896 HRESULT (STDMETHODCALLTYPE *Append) (_ADODynaCollection *This, IDispatch *Object);
897 HRESULT (STDMETHODCALLTYPE *Delete) (_ADODynaCollection *This, VARIANT Index);
898 END_INTERFACE
899 } _ADODynaCollectionVtbl;
900 interface _ADODynaCollection {
901 CONST_VTBL struct _ADODynaCollectionVtbl *lpVtbl;
902 };
903#ifdef COBJMACROS
904#define _ADODynaCollection_QueryInterface(This, riid, ppvObject) ((This)->lpVtbl ->QueryInterface (This, riid, ppvObject))
905#define _ADODynaCollection_AddRef(This) ((This)->lpVtbl ->AddRef (This))
906#define _ADODynaCollection_Release(This) ((This)->lpVtbl ->Release (This))
907#define _ADODynaCollection_GetTypeInfoCount(This, pctinfo) ((This)->lpVtbl ->GetTypeInfoCount (This, pctinfo))
908#define _ADODynaCollection_GetTypeInfo(This, iTInfo, lcid, ppTInfo) ((This)->lpVtbl ->GetTypeInfo (This, iTInfo, lcid, ppTInfo))
909#define _ADODynaCollection_GetIDsOfNames(This, riid, rgszNames, cNames, lcid, rgDispId) ((This)->lpVtbl ->GetIDsOfNames (This, riid, rgszNames, cNames, lcid, rgDispId))
910#define _ADODynaCollection_Invoke(This, dispIdMember, riid, lcid, wFlags, pDispParams, pVarResult, pExcepInfo, puArgErr) ((This)->lpVtbl ->Invoke (This, dispIdMember, riid, lcid, wFlags, pDispParams, pVarResult, pExcepInfo, puArgErr))
911#define _DynaCollection_get_Count(This, c) ((This)->lpVtbl ->get_Count (This, c))
912#define _ADODynaCollection__NewEnum(This, ppvObject) ((This)->lpVtbl ->_NewEnum (This, ppvObject))
913#define _ADODynaCollection_Refresh(This) ((This)->lpVtbl ->Refresh (This))
914#define _ADODynaCollection_Append(This, Object) ((This)->lpVtbl ->Append (This, Object))
915#define _ADODynaCollection_Delete(This, Index) ((This)->lpVtbl ->Delete (This, Index))
916#endif
917#endif
918#endif
919#ifndef ___ADO_INTERFACE_DEFINED__
920#define ___ADO_INTERFACE_DEFINED__
921
922 EXTERN_C const IID IID__ADO;
923#if defined (__cplusplus) && !defined (CINTERFACE)
924
925 MIDL_INTERFACE ("00000534-0000-0010-8000-00AA006D2EA4")
926 _ADO : public IDispatch {
927 public:
928 virtual HRESULT STDMETHODCALLTYPE get_Properties (ADOProperties **ppvObject) = 0;
929 };
930#else
931 typedef struct _ADOVtbl {
932 BEGIN_INTERFACE HRESULT (STDMETHODCALLTYPE *QueryInterface) (_ADO *This, REFIID riid, _COM_Outptr_ void **ppvObject);
933 ULONG (STDMETHODCALLTYPE *AddRef) (_ADO *This);
934 ULONG (STDMETHODCALLTYPE *Release) (_ADO *This);
935 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount) (_ADO *This, UINT *pctinfo);
936 HRESULT (STDMETHODCALLTYPE *GetTypeInfo) (_ADO *This, UINT iTInfo, LCID lcid, ITypeInfo **ppTInfo);
937 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames) (_ADO *This, REFIID riid, LPOLESTR *rgszNames, UINT cNames, LCID lcid, DISPID *rgDispId);
938 HRESULT (STDMETHODCALLTYPE *Invoke) (_ADO *This, DISPID dispIdMember, REFIID riid, LCID lcid, WORD wFlags, DISPPARAMS *pDispParams, VARIANT *pVarResult, EXCEPINFO *pExcepInfo, UINT *puArgErr);
939 HRESULT (STDMETHODCALLTYPE *get_Properties) (_ADO *This, ADOProperties **ppvObject);
940 END_INTERFACE
941 } _ADOVtbl;
942 interface _ADO {
943 CONST_VTBL struct _ADOVtbl *lpVtbl;
944 };
945#ifdef COBJMACROS
946#define _ADO_QueryInterface(This, riid, ppvObject) ((This)->lpVtbl ->QueryInterface (This, riid, ppvObject))
947#define _ADO_AddRef(This) ((This)->lpVtbl ->AddRef (This))
948#define _ADO_Release(This) ((This)->lpVtbl ->Release (This))
949#define _ADO_GetTypeInfoCount(This, pctinfo) ((This)->lpVtbl ->GetTypeInfoCount (This, pctinfo))
950#define _ADO_GetTypeInfo(This, iTInfo, lcid, ppTInfo) ((This)->lpVtbl ->GetTypeInfo (This, iTInfo, lcid, ppTInfo))
951#define _ADO_GetIDsOfNames(This, riid, rgszNames, cNames, lcid, rgDispId) ((This)->lpVtbl ->GetIDsOfNames (This, riid, rgszNames, cNames, lcid, rgDispId))
952#define _ADO_Invoke(This, dispIdMember, riid, lcid, wFlags, pDispParams, pVarResult, pExcepInfo, puArgErr) ((This)->lpVtbl ->Invoke (This, dispIdMember, riid, lcid, wFlags, pDispParams, pVarResult, pExcepInfo, puArgErr))
953#define _ADO_get_Properties(This, ppvObject) ((This)->lpVtbl ->get_Properties (This, ppvObject))
954#endif
955#endif
956#endif
957#ifndef __Error_INTERFACE_DEFINED__
958#define __Error_INTERFACE_DEFINED__
959
960 EXTERN_C const IID IID_Error;
961#if defined (__cplusplus) && !defined (CINTERFACE)
962
963 MIDL_INTERFACE ("00000500-0000-0010-8000-00AA006D2EA4")
964 ADOError : public IDispatch {
965 public:
966 virtual HRESULT STDMETHODCALLTYPE get_Number (long *pl) = 0;
967 virtual HRESULT STDMETHODCALLTYPE get_Source (BSTR *pbstr) = 0;
968 virtual HRESULT STDMETHODCALLTYPE get_Description (BSTR *pbstr) = 0;
969 virtual HRESULT STDMETHODCALLTYPE get_HelpFile (BSTR *pbstr) = 0;
970 virtual HRESULT STDMETHODCALLTYPE get_HelpContext (long *pl) = 0;
971 virtual HRESULT STDMETHODCALLTYPE get_SQLState (BSTR *pbstr) = 0;
972 virtual HRESULT STDMETHODCALLTYPE get_NativeError (long *pl) = 0;
973 };
974#else
975 typedef struct ErrorVtbl {
976 BEGIN_INTERFACE HRESULT (STDMETHODCALLTYPE *QueryInterface) (ADOError *This, REFIID riid, _COM_Outptr_ void **ppvObject);
977 ULONG (STDMETHODCALLTYPE *AddRef) (ADOError *This);
978 ULONG (STDMETHODCALLTYPE *Release) (ADOError *This);
979 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount) (ADOError *This, UINT *pctinfo);
980 HRESULT (STDMETHODCALLTYPE *GetTypeInfo) (ADOError *This, UINT iTInfo, LCID lcid, ITypeInfo **ppTInfo);
981 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames) (ADOError *This, REFIID riid, LPOLESTR *rgszNames, UINT cNames, LCID lcid, DISPID *rgDispId);
982 HRESULT (STDMETHODCALLTYPE *Invoke) (ADOError *This, DISPID dispIdMember, REFIID riid, LCID lcid, WORD wFlags, DISPPARAMS *pDispParams, VARIANT *pVarResult, EXCEPINFO *pExcepInfo, UINT *puArgErr);
983 HRESULT (STDMETHODCALLTYPE *get_Number) (ADOError *This, long *pl);
984 HRESULT (STDMETHODCALLTYPE *get_Source) (ADOError *This, BSTR *pbstr);
985 HRESULT (STDMETHODCALLTYPE *get_Description) (ADOError *This, BSTR *pbstr);
986 HRESULT (STDMETHODCALLTYPE *get_HelpFile) (ADOError *This, BSTR *pbstr);
987 HRESULT (STDMETHODCALLTYPE *get_HelpContext) (ADOError *This, long *pl);
988 HRESULT (STDMETHODCALLTYPE *get_SQLState) (ADOError *This, BSTR *pbstr);
989 HRESULT (STDMETHODCALLTYPE *get_NativeError) (ADOError *This, long *pl);
990 END_INTERFACE
991 } ErrorVtbl;
992 interface Error {
993 CONST_VTBL struct ErrorVtbl *lpVtbl;
994 };
995#ifdef COBJMACROS
996#define Error_QueryInterface(This, riid, ppvObject) ((This)->lpVtbl ->QueryInterface (This, riid, ppvObject))
997#define Error_AddRef(This) ((This)->lpVtbl ->AddRef (This))
998#define Error_Release(This) ((This)->lpVtbl ->Release (This))
999#define Error_GetTypeInfoCount(This, pctinfo) ((This)->lpVtbl ->GetTypeInfoCount (This, pctinfo))
1000#define Error_GetTypeInfo(This, iTInfo, lcid, ppTInfo) ((This)->lpVtbl ->GetTypeInfo (This, iTInfo, lcid, ppTInfo))
1001#define Error_GetIDsOfNames(This, riid, rgszNames, cNames, lcid, rgDispId) ((This)->lpVtbl ->GetIDsOfNames (This, riid, rgszNames, cNames, lcid, rgDispId))
1002#define Error_Invoke(This, dispIdMember, riid, lcid, wFlags, pDispParams, pVarResult, pExcepInfo, puArgErr) ((This)->lpVtbl ->Invoke (This, dispIdMember, riid, lcid, wFlags, pDispParams, pVarResult, pExcepInfo, puArgErr))
1003#define Error_get_Number(This, pl) ((This)->lpVtbl ->get_Number (This, pl))
1004#define Error_get_Source(This, pbstr) ((This)->lpVtbl ->get_Source (This, pbstr))
1005#define Error_get_Description(This, pbstr) ((This)->lpVtbl ->get_Description (This, pbstr))
1006#define Error_get_HelpFile(This, pbstr) ((This)->lpVtbl ->get_HelpFile (This, pbstr))
1007#define Error_get_HelpContext(This, pl) ((This)->lpVtbl ->get_HelpContext (This, pl))
1008#define Error_get_SQLState(This, pbstr) ((This)->lpVtbl ->get_SQLState (This, pbstr))
1009#define Error_get_NativeError(This, pl) ((This)->lpVtbl ->get_NativeError (This, pl))
1010#endif
1011#endif
1012#endif
1013#ifndef __Errors_INTERFACE_DEFINED__
1014#define __Errors_INTERFACE_DEFINED__
1015
1016 EXTERN_C const IID IID_Errors;
1017#if defined (__cplusplus) && !defined (CINTERFACE)
1018
1019 MIDL_INTERFACE ("00000501-0000-0010-8000-00AA006D2EA4")
1020 ADOErrors : public _ADOCollection {
1021 public:
1022 virtual HRESULT STDMETHODCALLTYPE get_Item (VARIANT Index, ADOError **ppvObject) = 0;
1023 virtual HRESULT STDMETHODCALLTYPE Clear (void) = 0;
1024 };
1025#else
1026 typedef struct ErrorsVtbl {
1027 BEGIN_INTERFACE HRESULT (STDMETHODCALLTYPE *QueryInterface) (ADOErrors *This, REFIID riid, _COM_Outptr_ void **ppvObject);
1028 ULONG (STDMETHODCALLTYPE *AddRef) (ADOErrors *This);
1029 ULONG (STDMETHODCALLTYPE *Release) (ADOErrors *This);
1030 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount) (ADOErrors *This, UINT *pctinfo);
1031 HRESULT (STDMETHODCALLTYPE *GetTypeInfo) (ADOErrors *This, UINT iTInfo, LCID lcid, ITypeInfo **ppTInfo);
1032 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames) (ADOErrors *This, REFIID riid, LPOLESTR *rgszNames, UINT cNames, LCID lcid, DISPID *rgDispId);
1033 HRESULT (STDMETHODCALLTYPE *Invoke) (ADOErrors *This, DISPID dispIdMember, REFIID riid, LCID lcid, WORD wFlags, DISPPARAMS *pDispParams, VARIANT *pVarResult, EXCEPINFO *pExcepInfo, UINT *puArgErr);
1034 HRESULT (STDMETHODCALLTYPE *get_Count) (ADOErrors *This, long *c);
1035 HRESULT (STDMETHODCALLTYPE *_NewEnum) (ADOErrors *This, IUnknown **ppvObject);
1036 HRESULT (STDMETHODCALLTYPE *Refresh) (ADOErrors *This);
1037 HRESULT (STDMETHODCALLTYPE *get_Item) (ADOErrors *This, VARIANT Index, ADOError **ppvObject);
1038 HRESULT (STDMETHODCALLTYPE *Clear) (ADOErrors *This);
1039 END_INTERFACE
1040 } ErrorsVtbl;
1041 interface Errors {
1042 CONST_VTBL struct ErrorsVtbl *lpVtbl;
1043 };
1044#ifdef COBJMACROS
1045#define Errors_QueryInterface(This, riid, ppvObject) ((This)->lpVtbl ->QueryInterface (This, riid, ppvObject))
1046#define Errors_AddRef(This) ((This)->lpVtbl ->AddRef (This))
1047#define Errors_Release(This) ((This)->lpVtbl ->Release (This))
1048#define Errors_GetTypeInfoCount(This, pctinfo) ((This)->lpVtbl ->GetTypeInfoCount (This, pctinfo))
1049#define Errors_GetTypeInfo(This, iTInfo, lcid, ppTInfo) ((This)->lpVtbl ->GetTypeInfo (This, iTInfo, lcid, ppTInfo))
1050#define Errors_GetIDsOfNames(This, riid, rgszNames, cNames, lcid, rgDispId) ((This)->lpVtbl ->GetIDsOfNames (This, riid, rgszNames, cNames, lcid, rgDispId))
1051#define Errors_Invoke(This, dispIdMember, riid, lcid, wFlags, pDispParams, pVarResult, pExcepInfo, puArgErr) ((This)->lpVtbl ->Invoke (This, dispIdMember, riid, lcid, wFlags, pDispParams, pVarResult, pExcepInfo, puArgErr))
1052#define Errors_get_Count(This, c) ((This)->lpVtbl ->get_Count (This, c))
1053#define Errors__NewEnum(This, ppvObject) ((This)->lpVtbl ->_NewEnum (This, ppvObject))
1054#define Errors_Refresh(This) ((This)->lpVtbl ->Refresh (This))
1055#define Errors_get_Item(This, Index, ppvObject) ((This)->lpVtbl ->get_Item (This, Index, ppvObject))
1056#define Errors_Clear(This) ((This)->lpVtbl ->Clear (This))
1057#endif
1058#endif
1059#endif
1060#ifndef __Command15_INTERFACE_DEFINED__
1061#define __Command15_INTERFACE_DEFINED__
1062
1063 EXTERN_C const IID IID_Command15;
1064#if defined (__cplusplus) && !defined (CINTERFACE)
1065
1066 MIDL_INTERFACE ("00001508-0000-0010-8000-00AA006D2EA4")
1067 Command15 : public _ADO {
1068 public:
1069 virtual HRESULT STDMETHODCALLTYPE get_ActiveConnection (_ADOConnection **ppvObject) = 0;
1070 virtual HRESULT STDMETHODCALLTYPE putref_ActiveConnection (_ADOConnection *pCon) = 0;
1071 virtual HRESULT STDMETHODCALLTYPE put_ActiveConnection (VARIANT vConn) = 0;
1072 virtual HRESULT STDMETHODCALLTYPE get_CommandText (BSTR *pbstr) = 0;
1073 virtual HRESULT STDMETHODCALLTYPE put_CommandText (BSTR bstr) = 0;
1074 virtual HRESULT STDMETHODCALLTYPE get_CommandTimeout (LONG *pl) = 0;
1075 virtual HRESULT STDMETHODCALLTYPE put_CommandTimeout (LONG Timeout) = 0;
1076 virtual HRESULT STDMETHODCALLTYPE get_Prepared (VARIANT_BOOL *pfPrepared) = 0;
1077 virtual HRESULT STDMETHODCALLTYPE put_Prepared (VARIANT_BOOL fPrepared) = 0;
1078 virtual HRESULT STDMETHODCALLTYPE Execute (VARIANT *RecordsAffected, VARIANT *Parameters, long Options, _ADORecordset **ppirs) = 0;
1079 virtual HRESULT STDMETHODCALLTYPE CreateParameter (BSTR Name, DataTypeEnum Type, ParameterDirectionEnum Direction, long Size, VARIANT Value, _ADOParameter **ppiprm) = 0;
1080 virtual HRESULT STDMETHODCALLTYPE get_Parameters (ADOParameters **ppvObject) = 0;
1081 virtual HRESULT STDMETHODCALLTYPE put_CommandType (CommandTypeEnum lCmdType) = 0;
1082 virtual HRESULT STDMETHODCALLTYPE get_CommandType (CommandTypeEnum *plCmdType) = 0;
1083 virtual HRESULT STDMETHODCALLTYPE get_Name (BSTR *pbstrName) = 0;
1084 virtual HRESULT STDMETHODCALLTYPE put_Name (BSTR bstrName) = 0;
1085 };
1086#else
1087 typedef struct Command15Vtbl {
1088 BEGIN_INTERFACE HRESULT (STDMETHODCALLTYPE *QueryInterface) (Command15 *This, REFIID riid, _COM_Outptr_ void **ppvObject);
1089 ULONG (STDMETHODCALLTYPE *AddRef) (Command15 *This);
1090 ULONG (STDMETHODCALLTYPE *Release) (Command15 *This);
1091 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount) (Command15 *This, UINT *pctinfo);
1092 HRESULT (STDMETHODCALLTYPE *GetTypeInfo) (Command15 *This, UINT iTInfo, LCID lcid, ITypeInfo **ppTInfo);
1093 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames) (Command15 *This, REFIID riid, LPOLESTR *rgszNames, UINT cNames, LCID lcid, DISPID *rgDispId);
1094 HRESULT (STDMETHODCALLTYPE *Invoke) (Command15 *This, DISPID dispIdMember, REFIID riid, LCID lcid, WORD wFlags, DISPPARAMS *pDispParams, VARIANT *pVarResult, EXCEPINFO *pExcepInfo, UINT *puArgErr);
1095 HRESULT (STDMETHODCALLTYPE *get_Properties) (Command15 *This, ADOProperties **ppvObject);
1096 HRESULT (STDMETHODCALLTYPE *get_ActiveConnection) (Command15 *This, _ADOConnection **ppvObject);
1097 HRESULT (STDMETHODCALLTYPE *putref_ActiveADOConnection) (Command15 *This, _ADOConnection *pCon);
1098 HRESULT (STDMETHODCALLTYPE *put_ActiveConnection) (Command15 *This, VARIANT vConn);
1099 HRESULT (STDMETHODCALLTYPE *get_CommandText) (Command15 *This, BSTR *pbstr);
1100 HRESULT (STDMETHODCALLTYPE *put_CommandText) (Command15 *This, BSTR bstr);
1101 HRESULT (STDMETHODCALLTYPE *get_CommandTimeout) (Command15 *This, LONG *pl);
1102 HRESULT (STDMETHODCALLTYPE *put_CommandTimeout) (Command15 *This, LONG Timeout);
1103 HRESULT (STDMETHODCALLTYPE *get_Prepared) (Command15 *This, VARIANT_BOOL *pfPrepared);
1104 HRESULT (STDMETHODCALLTYPE *put_Prepared) (Command15 *This, VARIANT_BOOL fPrepared);
1105 HRESULT (STDMETHODCALLTYPE *Execute) (Command15 *This, VARIANT *RecordsAffected, VARIANT *Parameters, long Options, _ADORecordset **ppirs);
1106 HRESULT (STDMETHODCALLTYPE *CreateParameter) (Command15 *This, BSTR Name, DataTypeEnum Type, ParameterDirectionEnum Direction, long Size, VARIANT Value, _ADOParameter **ppiprm);
1107 HRESULT (STDMETHODCALLTYPE *get_Parameters) (Command15 *This, ADOParameters **ppvObject);
1108 HRESULT (STDMETHODCALLTYPE *put_CommandType) (Command15 *This, CommandTypeEnum lCmdType);
1109 HRESULT (STDMETHODCALLTYPE *get_CommandType) (Command15 *This, CommandTypeEnum *plCmdType);
1110 HRESULT (STDMETHODCALLTYPE *get_Name) (Command15 *This, BSTR *pbstrName);
1111 HRESULT (STDMETHODCALLTYPE *put_Name) (Command15 *This, BSTR bstrName);
1112 END_INTERFACE
1113 } Command15Vtbl;
1114 interface Command15 {
1115 CONST_VTBL struct Command15Vtbl *lpVtbl;
1116 };
1117#ifdef COBJMACROS
1118#define Command15_QueryInterface(This, riid, ppvObject) ((This)->lpVtbl ->QueryInterface (This, riid, ppvObject))
1119#define Command15_AddRef(This) ((This)->lpVtbl ->AddRef (This))
1120#define Command15_Release(This) ((This)->lpVtbl ->Release (This))
1121#define Command15_GetTypeInfoCount(This, pctinfo) ((This)->lpVtbl ->GetTypeInfoCount (This, pctinfo))
1122#define Command15_GetTypeInfo(This, iTInfo, lcid, ppTInfo) ((This)->lpVtbl ->GetTypeInfo (This, iTInfo, lcid, ppTInfo))
1123#define Command15_GetIDsOfNames(This, riid, rgszNames, cNames, lcid, rgDispId) ((This)->lpVtbl ->GetIDsOfNames (This, riid, rgszNames, cNames, lcid, rgDispId))
1124#define Command15_Invoke(This, dispIdMember, riid, lcid, wFlags, pDispParams, pVarResult, pExcepInfo, puArgErr) ((This)->lpVtbl ->Invoke (This, dispIdMember, riid, lcid, wFlags, pDispParams, pVarResult, pExcepInfo, puArgErr))
1125#define Command15_get_Properties(This, ppvObject) ((This)->lpVtbl ->get_Properties (This, ppvObject))
1126#define Command15_get_ActiveConnection(This, ppvObject) ((This)->lpVtbl ->get_ActiveConnection (This, ppvObject))
1127#define Command15_putref_ActiveConnection(This, pCon) ((This)->lpVtbl ->putref_ActiveConnection (This, pCon))
1128#define Command15_put_ActiveConnection(This, vConn) ((This)->lpVtbl ->put_ActiveConnection (This, vConn))
1129#define Command15_get_CommandText(This, pbstr) ((This)->lpVtbl ->get_CommandText (This, pbstr))
1130#define Command15_put_CommandText(This, bstr) ((This)->lpVtbl ->put_CommandText (This, bstr))
1131#define Command15_get_CommandTimeout(This, pl) ((This)->lpVtbl ->get_CommandTimeout (This, pl))
1132#define Command15_put_CommandTimeout(This, Timeout) ((This)->lpVtbl ->put_CommandTimeout (This, Timeout))
1133#define Command15_get_Prepared(This, pfPrepared) ((This)->lpVtbl ->get_Prepared (This, pfPrepared))
1134#define Command15_put_Prepared(This, fPrepared) ((This)->lpVtbl ->put_Prepared (This, fPrepared))
1135#define Command15_Execute(This, RecordsAffected, Parameters, Options, ppirs) ((This)->lpVtbl ->Execute (This, RecordsAffected, Parameters, Options, ppirs))
1136#define Command15_CreateParameter(This, Name, Type, Direction, Size, Value, ppiprm) ((This)->lpVtbl ->CreateParameter (This, Name, Type, Direction, Size, Value, ppiprm))
1137#define Command15_get_Parameters(This, ppvObject) ((This)->lpVtbl ->get_Parameters (This, ppvObject))
1138#define Command15_put_CommandType(This, lCmdType) ((This)->lpVtbl ->put_CommandType (This, lCmdType))
1139#define Command15_get_CommandType(This, plCmdType) ((This)->lpVtbl ->get_CommandType (This, plCmdType))
1140#define Command15_get_Name(This, pbstrName) ((This)->lpVtbl ->get_Name (This, pbstrName))
1141#define Command15_put_Name(This, bstrName) ((This)->lpVtbl ->put_Name (This, bstrName))
1142#endif
1143#endif
1144#endif
1145#ifndef __Command25_INTERFACE_DEFINED__
1146#define __Command25_INTERFACE_DEFINED__
1147
1148 EXTERN_C const IID IID_Command25;
1149#if defined (__cplusplus) && !defined (CINTERFACE)
1150
1151 MIDL_INTERFACE ("0000154E-0000-0010-8000-00AA006D2EA4")
1152 Command25 : public Command15 {
1153 public:
1154 virtual HRESULT STDMETHODCALLTYPE get_State (LONG *plObjState) = 0;
1155 virtual HRESULT STDMETHODCALLTYPE Cancel (void) = 0;
1156 };
1157#else
1158 typedef struct Command25Vtbl {
1159 BEGIN_INTERFACE HRESULT (STDMETHODCALLTYPE *QueryInterface) (Command25 *This, REFIID riid, _COM_Outptr_ void **ppvObject);
1160 ULONG (STDMETHODCALLTYPE *AddRef) (Command25 *This);
1161 ULONG (STDMETHODCALLTYPE *Release) (Command25 *This);
1162 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount) (Command25 *This, UINT *pctinfo);
1163 HRESULT (STDMETHODCALLTYPE *GetTypeInfo) (Command25 *This, UINT iTInfo, LCID lcid, ITypeInfo **ppTInfo);
1164 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames) (Command25 *This, REFIID riid, LPOLESTR *rgszNames, UINT cNames, LCID lcid, DISPID *rgDispId);
1165 HRESULT (STDMETHODCALLTYPE *Invoke) (Command25 *This, DISPID dispIdMember, REFIID riid, LCID lcid, WORD wFlags, DISPPARAMS *pDispParams, VARIANT *pVarResult, EXCEPINFO *pExcepInfo, UINT *puArgErr);
1166 HRESULT (STDMETHODCALLTYPE *get_Properties) (Command25 *This, ADOProperties **ppvObject);
1167 HRESULT (STDMETHODCALLTYPE *get_ActiveConnection) (Command25 *This, _ADOConnection **ppvObject);
1168 HRESULT (STDMETHODCALLTYPE *putref_ActiveADOConnection) (Command25 *This, _ADOConnection *pCon);
1169 HRESULT (STDMETHODCALLTYPE *put_ActiveConnection) (Command25 *This, VARIANT vConn);
1170 HRESULT (STDMETHODCALLTYPE *get_CommandText) (Command25 *This, BSTR *pbstr);
1171 HRESULT (STDMETHODCALLTYPE *put_CommandText) (Command25 *This, BSTR bstr);
1172 HRESULT (STDMETHODCALLTYPE *get_CommandTimeout) (Command25 *This, LONG *pl);
1173 HRESULT (STDMETHODCALLTYPE *put_CommandTimeout) (Command25 *This, LONG Timeout);
1174 HRESULT (STDMETHODCALLTYPE *get_Prepared) (Command25 *This, VARIANT_BOOL *pfPrepared);
1175 HRESULT (STDMETHODCALLTYPE *put_Prepared) (Command25 *This, VARIANT_BOOL fPrepared);
1176 HRESULT (STDMETHODCALLTYPE *Execute) (Command25 *This, VARIANT *RecordsAffected, VARIANT *Parameters, long Options, _ADORecordset **ppirs);
1177 HRESULT (STDMETHODCALLTYPE *CreateParameter) (Command25 *This, BSTR Name, DataTypeEnum Type, ParameterDirectionEnum Direction, long Size, VARIANT Value, _ADOParameter **ppiprm);
1178 HRESULT (STDMETHODCALLTYPE *get_Parameters) (Command25 *This, ADOParameters **ppvObject);
1179 HRESULT (STDMETHODCALLTYPE *put_CommandType) (Command25 *This, CommandTypeEnum lCmdType);
1180 HRESULT (STDMETHODCALLTYPE *get_CommandType) (Command25 *This, CommandTypeEnum *plCmdType);
1181 HRESULT (STDMETHODCALLTYPE *get_Name) (Command25 *This, BSTR *pbstrName);
1182 HRESULT (STDMETHODCALLTYPE *put_Name) (Command25 *This, BSTR bstrName);
1183 HRESULT (STDMETHODCALLTYPE *get_State) (Command25 *This, LONG *plObjState);
1184 HRESULT (STDMETHODCALLTYPE *Cancel) (Command25 *This);
1185 END_INTERFACE
1186 } Command25Vtbl;
1187 interface Command25 {
1188 CONST_VTBL struct Command25Vtbl *lpVtbl;
1189 };
1190#ifdef COBJMACROS
1191#define Command25_QueryInterface(This, riid, ppvObject) ((This)->lpVtbl ->QueryInterface (This, riid, ppvObject))
1192#define Command25_AddRef(This) ((This)->lpVtbl ->AddRef (This))
1193#define Command25_Release(This) ((This)->lpVtbl ->Release (This))
1194#define Command25_GetTypeInfoCount(This, pctinfo) ((This)->lpVtbl ->GetTypeInfoCount (This, pctinfo))
1195#define Command25_GetTypeInfo(This, iTInfo, lcid, ppTInfo) ((This)->lpVtbl ->GetTypeInfo (This, iTInfo, lcid, ppTInfo))
1196#define Command25_GetIDsOfNames(This, riid, rgszNames, cNames, lcid, rgDispId) ((This)->lpVtbl ->GetIDsOfNames (This, riid, rgszNames, cNames, lcid, rgDispId))
1197#define Command25_Invoke(This, dispIdMember, riid, lcid, wFlags, pDispParams, pVarResult, pExcepInfo, puArgErr) ((This)->lpVtbl ->Invoke (This, dispIdMember, riid, lcid, wFlags, pDispParams, pVarResult, pExcepInfo, puArgErr))
1198#define Command25_get_Properties(This, ppvObject) ((This)->lpVtbl ->get_Properties (This, ppvObject))
1199#define Command25_get_ActiveConnection(This, ppvObject) ((This)->lpVtbl ->get_ActiveConnection (This, ppvObject))
1200#define Command25_putref_ActiveConnection(This, pCon) ((This)->lpVtbl ->putref_ActiveConnection (This, pCon))
1201#define Command25_put_ActiveConnection(This, vConn) ((This)->lpVtbl ->put_ActiveConnection (This, vConn))
1202#define Command25_get_CommandText(This, pbstr) ((This)->lpVtbl ->get_CommandText (This, pbstr))
1203#define Command25_put_CommandText(This, bstr) ((This)->lpVtbl ->put_CommandText (This, bstr))
1204#define Command25_get_CommandTimeout(This, pl) ((This)->lpVtbl ->get_CommandTimeout (This, pl))
1205#define Command25_put_CommandTimeout(This, Timeout) ((This)->lpVtbl ->put_CommandTimeout (This, Timeout))
1206#define Command25_get_Prepared(This, pfPrepared) ((This)->lpVtbl ->get_Prepared (This, pfPrepared))
1207#define Command25_put_Prepared(This, fPrepared) ((This)->lpVtbl ->put_Prepared (This, fPrepared))
1208#define Command25_Execute(This, RecordsAffected, Parameters, Options, ppirs) ((This)->lpVtbl ->Execute (This, RecordsAffected, Parameters, Options, ppirs))
1209#define Command25_CreateParameter(This, Name, Type, Direction, Size, Value, ppiprm) ((This)->lpVtbl ->CreateParameter (This, Name, Type, Direction, Size, Value, ppiprm))
1210#define Command25_get_Parameters(This, ppvObject) ((This)->lpVtbl ->get_Parameters (This, ppvObject))
1211#define Command25_put_CommandType(This, lCmdType) ((This)->lpVtbl ->put_CommandType (This, lCmdType))
1212#define Command25_get_CommandType(This, plCmdType) ((This)->lpVtbl ->get_CommandType (This, plCmdType))
1213#define Command25_get_Name(This, pbstrName) ((This)->lpVtbl ->get_Name (This, pbstrName))
1214#define Command25_put_Name(This, bstrName) ((This)->lpVtbl ->put_Name (This, bstrName))
1215#define Command25_get_State(This, plObjState) ((This)->lpVtbl ->get_State (This, plObjState))
1216#define Command25_Cancel(This) ((This)->lpVtbl ->Cancel (This))
1217#endif
1218#endif
1219#endif
1220#ifndef ___Command_INTERFACE_DEFINED__
1221#define ___Command_INTERFACE_DEFINED__
1222
1223 EXTERN_C const IID IID__Command;
1224#if defined (__cplusplus) && !defined (CINTERFACE)
1225
1226 MIDL_INTERFACE ("986761E8-7269-4890-AA65-AD7C03697A6D")
1227 _ADOCommand : public Command25 {
1228 public:
1229 virtual HRESULT __stdcall putref_CommandStream (IUnknown *pStream) = 0;
1230 virtual HRESULT __stdcall get_CommandStream (VARIANT *pvStream) = 0;
1231 virtual HRESULT __stdcall put_Dialect (BSTR bstrDialect) = 0;
1232 virtual HRESULT __stdcall get_Dialect (BSTR *pbstrDialect) = 0;
1233 virtual HRESULT __stdcall put_NamedParameters (VARIANT_BOOL fNamedParameters) = 0;
1234 virtual HRESULT __stdcall get_NamedParameters (VARIANT_BOOL *pfNamedParameters) = 0;
1235 };
1236#else
1237 typedef struct _CommandVtbl {
1238 BEGIN_INTERFACE HRESULT (STDMETHODCALLTYPE *QueryInterface) (_ADOCommand *This, REFIID riid, _COM_Outptr_ void **ppvObject);
1239 ULONG (STDMETHODCALLTYPE *AddRef) (_ADOCommand *This);
1240 ULONG (STDMETHODCALLTYPE *Release) (_ADOCommand *This);
1241 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount) (_ADOCommand *This, UINT *pctinfo);
1242 HRESULT (STDMETHODCALLTYPE *GetTypeInfo) (_ADOCommand *This, UINT iTInfo, LCID lcid, ITypeInfo **ppTInfo);
1243 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames) (_ADOCommand *This, REFIID riid, LPOLESTR *rgszNames, UINT cNames, LCID lcid, DISPID *rgDispId);
1244 HRESULT (STDMETHODCALLTYPE *Invoke) (_ADOCommand *This, DISPID dispIdMember, REFIID riid, LCID lcid, WORD wFlags, DISPPARAMS *pDispParams, VARIANT *pVarResult, EXCEPINFO *pExcepInfo, UINT *puArgErr);
1245 HRESULT (STDMETHODCALLTYPE *get_Properties) (_ADOCommand *This, ADOProperties **ppvObject);
1246 HRESULT (STDMETHODCALLTYPE *get_ActiveConnection) (_ADOCommand *This, _ADOConnection **ppvObject);
1247 HRESULT (STDMETHODCALLTYPE *putref_ActiveADOConnection) (_ADOCommand *This, _ADOConnection *pCon);
1248 HRESULT (STDMETHODCALLTYPE *put_ActiveConnection) (_ADOCommand *This, VARIANT vConn);
1249 HRESULT (STDMETHODCALLTYPE *get_CommandText) (_ADOCommand *This, BSTR *pbstr);
1250 HRESULT (STDMETHODCALLTYPE *put_CommandText) (_ADOCommand *This, BSTR bstr);
1251 HRESULT (STDMETHODCALLTYPE *get_CommandTimeout) (_ADOCommand *This, LONG *pl);
1252 HRESULT (STDMETHODCALLTYPE *put_CommandTimeout) (_ADOCommand *This, LONG Timeout);
1253 HRESULT (STDMETHODCALLTYPE *get_Prepared) (_ADOCommand *This, VARIANT_BOOL *pfPrepared);
1254 HRESULT (STDMETHODCALLTYPE *put_Prepared) (_ADOCommand *This, VARIANT_BOOL fPrepared);
1255 HRESULT (STDMETHODCALLTYPE *Execute) (_ADOCommand *This, VARIANT *RecordsAffected, VARIANT *Parameters, long Options, _ADORecordset **ppirs);
1256 HRESULT (STDMETHODCALLTYPE *CreateParameter) (_ADOCommand *This, BSTR Name, DataTypeEnum Type, ParameterDirectionEnum Direction, long Size, VARIANT Value, _ADOParameter **ppiprm);
1257 HRESULT (STDMETHODCALLTYPE *get_Parameters) (_ADOCommand *This, ADOParameters **ppvObject);
1258 HRESULT (STDMETHODCALLTYPE *put_CommandType) (_ADOCommand *This, CommandTypeEnum lCmdType);
1259 HRESULT (STDMETHODCALLTYPE *get_CommandType) (_ADOCommand *This, CommandTypeEnum *plCmdType);
1260 HRESULT (STDMETHODCALLTYPE *get_Name) (_ADOCommand *This, BSTR *pbstrName);
1261 HRESULT (STDMETHODCALLTYPE *put_Name) (_ADOCommand *This, BSTR bstrName);
1262 HRESULT (STDMETHODCALLTYPE *get_State) (_ADOCommand *This, LONG *plObjState);
1263 HRESULT (STDMETHODCALLTYPE *Cancel) (_ADOCommand *This);
1264 HRESULT (__stdcall *putref_CommandADOStream) (_ADOCommand *This, IUnknown *pStream);
1265 HRESULT (__stdcall *get_CommandStream) (_ADOCommand *This, VARIANT *pvStream);
1266 HRESULT (__stdcall *put_Dialect) (_ADOCommand *This, BSTR bstrDialect);
1267 HRESULT (__stdcall *get_Dialect) (_ADOCommand *This, BSTR *pbstrDialect);
1268 HRESULT (__stdcall *put_NamedParameters) (_ADOCommand *This, VARIANT_BOOL fNamedParameters);
1269 HRESULT (__stdcall *get_NamedParameters) (_ADOCommand *This, VARIANT_BOOL *pfNamedParameters);
1270 END_INTERFACE
1271 } _CommandVtbl;
1272 interface _Command {
1273 CONST_VTBL struct _CommandVtbl *lpVtbl;
1274 };
1275#ifdef COBJMACROS
1276#define _Command_QueryInterface(This, riid, ppvObject) ((This)->lpVtbl ->QueryInterface (This, riid, ppvObject))
1277#define _Command_AddRef(This) ((This)->lpVtbl ->AddRef (This))
1278#define _Command_Release(This) ((This)->lpVtbl ->Release (This))
1279#define _Command_GetTypeInfoCount(This, pctinfo) ((This)->lpVtbl ->GetTypeInfoCount (This, pctinfo))
1280#define _Command_GetTypeInfo(This, iTInfo, lcid, ppTInfo) ((This)->lpVtbl ->GetTypeInfo (This, iTInfo, lcid, ppTInfo))
1281#define _Command_GetIDsOfNames(This, riid, rgszNames, cNames, lcid, rgDispId) ((This)->lpVtbl ->GetIDsOfNames (This, riid, rgszNames, cNames, lcid, rgDispId))
1282#define _Command_Invoke(This, dispIdMember, riid, lcid, wFlags, pDispParams, pVarResult, pExcepInfo, puArgErr) ((This)->lpVtbl ->Invoke (This, dispIdMember, riid, lcid, wFlags, pDispParams, pVarResult, pExcepInfo, puArgErr))
1283#define _Command_get_Properties(This, ppvObject) ((This)->lpVtbl ->get_Properties (This, ppvObject))
1284#define _Command_get_ActiveConnection(This, ppvObject) ((This)->lpVtbl ->get_ActiveConnection (This, ppvObject))
1285#define _Command_putref_ActiveConnection(This, pCon) ((This)->lpVtbl ->putref_ActiveConnection (This, pCon))
1286#define _Command_put_ActiveConnection(This, vConn) ((This)->lpVtbl ->put_ActiveConnection (This, vConn))
1287#define _Command_get_CommandText(This, pbstr) ((This)->lpVtbl ->get_CommandText (This, pbstr))
1288#define _Command_put_CommandText(This, bstr) ((This)->lpVtbl ->put_CommandText (This, bstr))
1289#define _Command_get_CommandTimeout(This, pl) ((This)->lpVtbl ->get_CommandTimeout (This, pl))
1290#define _Command_put_CommandTimeout(This, Timeout) ((This)->lpVtbl ->put_CommandTimeout (This, Timeout))
1291#define _Command_get_Prepared(This, pfPrepared) ((This)->lpVtbl ->get_Prepared (This, pfPrepared))
1292#define _Command_put_Prepared(This, fPrepared) ((This)->lpVtbl ->put_Prepared (This, fPrepared))
1293#define _Command_Execute(This, RecordsAffected, Parameters, Options, ppirs) ((This)->lpVtbl ->Execute (This, RecordsAffected, Parameters, Options, ppirs))
1294#define _Command_CreateParameter(This, Name, Type, Direction, Size, Value, ppiprm) ((This)->lpVtbl ->CreateParameter (This, Name, Type, Direction, Size, Value, ppiprm))
1295#define _Command_get_Parameters(This, ppvObject) ((This)->lpVtbl ->get_Parameters (This, ppvObject))
1296#define _Command_put_CommandType(This, lCmdType) ((This)->lpVtbl ->put_CommandType (This, lCmdType))
1297#define _Command_get_CommandType(This, plCmdType) ((This)->lpVtbl ->get_CommandType (This, plCmdType))
1298#define _Command_get_Name(This, pbstrName) ((This)->lpVtbl ->get_Name (This, pbstrName))
1299#define _Command_put_Name(This, bstrName) ((This)->lpVtbl ->put_Name (This, bstrName))
1300#define _Command_get_State(This, plObjState) ((This)->lpVtbl ->get_State (This, plObjState))
1301#define _Command_Cancel(This) ((This)->lpVtbl ->Cancel (This))
1302#define _Command_putref_CommandStream(This, pStream) ((This)->lpVtbl ->putref_CommandStream (This, pStream))
1303#define _Command_get_CommandStream(This, pvStream) ((This)->lpVtbl ->get_CommandStream (This, pvStream))
1304#define _Command_put_Dialect(This, bstrDialect) ((This)->lpVtbl ->put_Dialect (This, bstrDialect))
1305#define _Command_get_Dialect(This, pbstrDialect) ((This)->lpVtbl ->get_Dialect (This, pbstrDialect))
1306#define _Command_put_NamedParameters(This, fNamedParameters) ((This)->lpVtbl ->put_NamedParameters (This, fNamedParameters))
1307#define _Command_get_NamedParameters(This, pfNamedParameters) ((This)->lpVtbl ->get_NamedParameters (This, pfNamedParameters))
1308#endif
1309#endif
1310#endif
1311#ifndef __ConnectionEventsVt_INTERFACE_DEFINED__
1312#define __ConnectionEventsVt_INTERFACE_DEFINED__
1313
1314 EXTERN_C const IID IID_ConnectionEventsVt;
1315#if defined (__cplusplus) && !defined (CINTERFACE)
1316
1317 MIDL_INTERFACE ("00001402-0000-0010-8000-00AA006D2EA4")
1318 ConnectionEventsVt : public IUnknown {
1319 public:
1320 virtual HRESULT STDMETHODCALLTYPE InfoMessage (ADOError *pError, EventStatusEnum *adStatus, _ADOConnection *pConnection) = 0;
1321 virtual HRESULT STDMETHODCALLTYPE BeginTransComplete (LONG TransactionLevel, ADOError *pError, EventStatusEnum *adStatus, _ADOConnection *pConnection) = 0;
1322 virtual HRESULT STDMETHODCALLTYPE CommitTransComplete (ADOError *pError, EventStatusEnum *adStatus, _ADOConnection *pConnection) = 0;
1323 virtual HRESULT STDMETHODCALLTYPE RollbackTransComplete (ADOError *pError, EventStatusEnum *adStatus, _ADOConnection *pConnection) = 0;
1324 virtual HRESULT STDMETHODCALLTYPE WillExecute (BSTR *Source, CursorTypeEnum *CursorType, LockTypeEnum *LockType, long *Options, EventStatusEnum *adStatus, _ADOCommand *pCommand, _ADORecordset *pRecordset, _ADOConnection *pConnection) = 0;
1325 virtual HRESULT STDMETHODCALLTYPE ExecuteComplete (LONG RecordsAffected, ADOError *pError, EventStatusEnum *adStatus, _ADOCommand *pCommand, _ADORecordset *pRecordset, _ADOConnection *pConnection) = 0;
1326 virtual HRESULT STDMETHODCALLTYPE WillConnect (BSTR *ConnectionString, BSTR *UserID, BSTR *Password, long *Options, EventStatusEnum *adStatus, _ADOConnection *pConnection) = 0;
1327 virtual HRESULT STDMETHODCALLTYPE ConnectComplete (ADOError *pError, EventStatusEnum *adStatus, _ADOConnection *pConnection) = 0;
1328 virtual HRESULT STDMETHODCALLTYPE Disconnect (EventStatusEnum *adStatus, _ADOConnection *pConnection) = 0;
1329 };
1330#else
1331 typedef struct ConnectionEventsVtVtbl {
1332 BEGIN_INTERFACE HRESULT (STDMETHODCALLTYPE *QueryInterface) (ConnectionEventsVt *This, REFIID riid, _COM_Outptr_ void **ppvObject);
1333 ULONG (STDMETHODCALLTYPE *AddRef) (ConnectionEventsVt *This);
1334 ULONG (STDMETHODCALLTYPE *Release) (ConnectionEventsVt *This);
1335 HRESULT (STDMETHODCALLTYPE *InfoMessage) (ConnectionEventsVt *This, ADOError *pError, EventStatusEnum *adStatus, _ADOConnection *pConnection);
1336 HRESULT (STDMETHODCALLTYPE *BeginTransComplete) (ConnectionEventsVt *This, LONG TransactionLevel, ADOError *pError, EventStatusEnum *adStatus, _ADOConnection *pConnection);
1337 HRESULT (STDMETHODCALLTYPE *CommitTransComplete) (ConnectionEventsVt *This, ADOError *pError, EventStatusEnum *adStatus, _ADOConnection *pConnection);
1338 HRESULT (STDMETHODCALLTYPE *RollbackTransComplete) (ConnectionEventsVt *This, ADOError *pError, EventStatusEnum *adStatus, _ADOConnection *pConnection);
1339 HRESULT (STDMETHODCALLTYPE *WillExecute) (ConnectionEventsVt *This, BSTR *Source, CursorTypeEnum *CursorType, LockTypeEnum *LockType, long *Options, EventStatusEnum *adStatus, _ADOCommand *pCommand, _ADORecordset *pRecordset, _ADOConnection *pConnection);
1340 HRESULT (STDMETHODCALLTYPE *ExecuteComplete) (ConnectionEventsVt *This, LONG RecordsAffected, ADOError *pError, EventStatusEnum *adStatus, _ADOCommand *pCommand, _ADORecordset *pRecordset, _ADOConnection *pConnection);
1341 HRESULT (STDMETHODCALLTYPE *WillConnect) (ConnectionEventsVt *This, BSTR *ConnectionString, BSTR *UserID, BSTR *Password, long *Options, EventStatusEnum *adStatus, _ADOConnection *pConnection);
1342 HRESULT (STDMETHODCALLTYPE *ConnectComplete) (ConnectionEventsVt *This, ADOError *pError, EventStatusEnum *adStatus, _ADOConnection *pConnection);
1343 HRESULT (STDMETHODCALLTYPE *Disconnect) (ConnectionEventsVt *This, EventStatusEnum *adStatus, _ADOConnection *pConnection);
1344 END_INTERFACE
1345 } ConnectionEventsVtVtbl;
1346 interface ConnectionEventsVt {
1347 CONST_VTBL struct ConnectionEventsVtVtbl *lpVtbl;
1348 };
1349#ifdef COBJMACROS
1350#define ConnectionEventsVt_QueryInterface(This, riid, ppvObject) ((This)->lpVtbl ->QueryInterface (This, riid, ppvObject))
1351#define ConnectionEventsVt_AddRef(This) ((This)->lpVtbl ->AddRef (This))
1352#define ConnectionEventsVt_Release(This) ((This)->lpVtbl ->Release (This))
1353#define ConnectionEventsVt_InfoMessage(This, pError, adStatus, pConnection) ((This)->lpVtbl ->InfoMessage (This, pError, adStatus, pConnection))
1354#define ConnectionEventsVt_BeginTransComplete(This, TransactionLevel, pError, adStatus, pConnection) ((This)->lpVtbl ->BeginTransComplete (This, TransactionLevel, pError, adStatus, pConnection))
1355#define ConnectionEventsVt_CommitTransComplete(This, pError, adStatus, pConnection) ((This)->lpVtbl ->CommitTransComplete (This, pError, adStatus, pConnection))
1356#define ConnectionEventsVt_RollbackTransComplete(This, pError, adStatus, pConnection) ((This)->lpVtbl ->RollbackTransComplete (This, pError, adStatus, pConnection))
1357#define ConnectionEventsVt_WillExecute(This, Source, CursorType, LockType, Options, adStatus, pCommand, pRecordset, pConnection) ((This)->lpVtbl ->WillExecute (This, Source, CursorType, LockType, Options, adStatus, pCommand, pRecordset, pConnection))
1358#define ConnectionEventsVt_ExecuteComplete(This, RecordsAffected, pError, adStatus, pCommand, pRecordset, pConnection) ((This)->lpVtbl ->ExecuteComplete (This, RecordsAffected, pError, adStatus, pCommand, pRecordset, pConnection))
1359#define ConnectionEventsVt_WillConnect(This, ConnectionString, UserID, Password, Options, adStatus, pConnection) ((This)->lpVtbl ->WillConnect (This, ConnectionString, UserID, Password, Options, adStatus, pConnection))
1360#define ConnectionEventsVt_ConnectComplete(This, pError, adStatus, pConnection) ((This)->lpVtbl ->ConnectComplete (This, pError, adStatus, pConnection))
1361#define ConnectionEventsVt_Disconnect(This, adStatus, pConnection) ((This)->lpVtbl ->Disconnect (This, adStatus, pConnection))
1362#endif
1363#endif
1364#endif
1365#ifndef __RecordsetEventsVt_INTERFACE_DEFINED__
1366#define __RecordsetEventsVt_INTERFACE_DEFINED__
1367
1368 EXTERN_C const IID IID_RecordsetEventsVt;
1369#if defined (__cplusplus) && !defined (CINTERFACE)
1370
1371 MIDL_INTERFACE ("00001403-0000-0010-8000-00AA006D2EA4")
1372 RecordsetEventsVt : public IUnknown {
1373 public:
1374 virtual HRESULT STDMETHODCALLTYPE WillChangeField (LONG cFields, VARIANT Fields, EventStatusEnum *adStatus, _ADORecordset *pRecordset) = 0;
1375 virtual HRESULT STDMETHODCALLTYPE FieldChangeComplete (LONG cFields, VARIANT Fields, ADOError *pError, EventStatusEnum *adStatus, _ADORecordset *pRecordset) = 0;
1376 virtual HRESULT STDMETHODCALLTYPE WillChangeRecord (EventReasonEnum adReason, LONG cRecords, EventStatusEnum *adStatus, _ADORecordset *pRecordset) = 0;
1377 virtual HRESULT STDMETHODCALLTYPE RecordChangeComplete (EventReasonEnum adReason, LONG cRecords, ADOError *pError, EventStatusEnum *adStatus, _ADORecordset *pRecordset) = 0;
1378 virtual HRESULT STDMETHODCALLTYPE WillChangeRecordset (EventReasonEnum adReason, EventStatusEnum *adStatus, _ADORecordset *pRecordset) = 0;
1379 virtual HRESULT STDMETHODCALLTYPE RecordsetChangeComplete (EventReasonEnum adReason, ADOError *pError, EventStatusEnum *adStatus, _ADORecordset *pRecordset) = 0;
1380 virtual HRESULT STDMETHODCALLTYPE WillMove (EventReasonEnum adReason, EventStatusEnum *adStatus, _ADORecordset *pRecordset) = 0;
1381 virtual HRESULT STDMETHODCALLTYPE MoveComplete (EventReasonEnum adReason, ADOError *pError, EventStatusEnum *adStatus, _ADORecordset *pRecordset) = 0;
1382 virtual HRESULT STDMETHODCALLTYPE EndOfRecordset (VARIANT_BOOL *fMoreData, EventStatusEnum *adStatus, _ADORecordset *pRecordset) = 0;
1383 virtual HRESULT STDMETHODCALLTYPE FetchProgress (long Progress, long MaxProgress, EventStatusEnum *adStatus, _ADORecordset *pRecordset) = 0;
1384 virtual HRESULT STDMETHODCALLTYPE FetchComplete (ADOError *pError, EventStatusEnum *adStatus, _ADORecordset *pRecordset) = 0;
1385 };
1386#else
1387 typedef struct RecordsetEventsVtVtbl {
1388 BEGIN_INTERFACE HRESULT (STDMETHODCALLTYPE *QueryInterface) (RecordsetEventsVt *This, REFIID riid, _COM_Outptr_ void **ppvObject);
1389 ULONG (STDMETHODCALLTYPE *AddRef) (RecordsetEventsVt *This);
1390 ULONG (STDMETHODCALLTYPE *Release) (RecordsetEventsVt *This);
1391 HRESULT (STDMETHODCALLTYPE *WillChangeADOField) (RecordsetEventsVt *This, LONG cFields, VARIANT Fields, EventStatusEnum *adStatus, _ADORecordset *pRecordset);
1392 HRESULT (STDMETHODCALLTYPE *FieldChangeComplete) (RecordsetEventsVt *This, LONG cFields, VARIANT Fields, ADOError *pError, EventStatusEnum *adStatus, _ADORecordset *pRecordset);
1393 HRESULT (STDMETHODCALLTYPE *WillChangeADORecord) (RecordsetEventsVt *This, EventReasonEnum adReason, LONG cRecords, EventStatusEnum *adStatus, _ADORecordset *pRecordset);
1394 HRESULT (STDMETHODCALLTYPE *RecordChangeComplete) (RecordsetEventsVt *This, EventReasonEnum adReason, LONG cRecords, ADOError *pError, EventStatusEnum *adStatus, _ADORecordset *pRecordset);
1395 HRESULT (STDMETHODCALLTYPE *WillChangeADORecordset) (RecordsetEventsVt *This, EventReasonEnum adReason, EventStatusEnum *adStatus, _ADORecordset *pRecordset);
1396 HRESULT (STDMETHODCALLTYPE *RecordsetChangeComplete) (RecordsetEventsVt *This, EventReasonEnum adReason, ADOError *pError, EventStatusEnum *adStatus, _ADORecordset *pRecordset);
1397 HRESULT (STDMETHODCALLTYPE *WillMove) (RecordsetEventsVt *This, EventReasonEnum adReason, EventStatusEnum *adStatus, _ADORecordset *pRecordset);
1398 HRESULT (STDMETHODCALLTYPE *MoveComplete) (RecordsetEventsVt *This, EventReasonEnum adReason, ADOError *pError, EventStatusEnum *adStatus, _ADORecordset *pRecordset);
1399 HRESULT (STDMETHODCALLTYPE *EndOfADORecordset) (RecordsetEventsVt *This, VARIANT_BOOL *fMoreData, EventStatusEnum *adStatus, _ADORecordset *pRecordset);
1400 HRESULT (STDMETHODCALLTYPE *FetchProgress) (RecordsetEventsVt *This, long Progress, long MaxProgress, EventStatusEnum *adStatus, _ADORecordset *pRecordset);
1401 HRESULT (STDMETHODCALLTYPE *FetchComplete) (RecordsetEventsVt *This, ADOError *pError, EventStatusEnum *adStatus, _ADORecordset *pRecordset);
1402 END_INTERFACE
1403 } RecordsetEventsVtVtbl;
1404 interface RecordsetEventsVt {
1405 CONST_VTBL struct RecordsetEventsVtVtbl *lpVtbl;
1406 };
1407#ifdef COBJMACROS
1408#define RecordsetEventsVt_QueryInterface(This, riid, ppvObject) ((This)->lpVtbl ->QueryInterface (This, riid, ppvObject))
1409#define RecordsetEventsVt_AddRef(This) ((This)->lpVtbl ->AddRef (This))
1410#define RecordsetEventsVt_Release(This) ((This)->lpVtbl ->Release (This))
1411#define RecordsetEventsVt_WillChangeField(This, cFields, Fields, adStatus, pRecordset) ((This)->lpVtbl ->WillChangeField (This, cFields, Fields, adStatus, pRecordset))
1412#define RecordsetEventsVt_FieldChangeComplete(This, cFields, Fields, pError, adStatus, pRecordset) ((This)->lpVtbl ->FieldChangeComplete (This, cFields, Fields, pError, adStatus, pRecordset))
1413#define RecordsetEventsVt_WillChangeRecord(This, adReason, cRecords, adStatus, pRecordset) ((This)->lpVtbl ->WillChangeRecord (This, adReason, cRecords, adStatus, pRecordset))
1414#define RecordsetEventsVt_RecordChangeComplete(This, adReason, cRecords, pError, adStatus, pRecordset) ((This)->lpVtbl ->RecordChangeComplete (This, adReason, cRecords, pError, adStatus, pRecordset))
1415#define RecordsetEventsVt_WillChangeRecordset(This, adReason, adStatus, pRecordset) ((This)->lpVtbl ->WillChangeRecordset (This, adReason, adStatus, pRecordset))
1416#define RecordsetEventsVt_RecordsetChangeComplete(This, adReason, pError, adStatus, pRecordset) ((This)->lpVtbl ->RecordsetChangeComplete (This, adReason, pError, adStatus, pRecordset))
1417#define RecordsetEventsVt_WillMove(This, adReason, adStatus, pRecordset) ((This)->lpVtbl ->WillMove (This, adReason, adStatus, pRecordset))
1418#define RecordsetEventsVt_MoveComplete(This, adReason, pError, adStatus, pRecordset) ((This)->lpVtbl ->MoveComplete (This, adReason, pError, adStatus, pRecordset))
1419#define RecordsetEventsVt_EndOfRecordset(This, fMoreData, adStatus, pRecordset) ((This)->lpVtbl ->EndOfRecordset (This, fMoreData, adStatus, pRecordset))
1420#define RecordsetEventsVt_FetchProgress(This, Progress, MaxProgress, adStatus, pRecordset) ((This)->lpVtbl ->FetchProgress (This, Progress, MaxProgress, adStatus, pRecordset))
1421#define RecordsetEventsVt_FetchComplete(This, pError, adStatus, pRecordset) ((This)->lpVtbl ->FetchComplete (This, pError, adStatus, pRecordset))
1422#endif
1423#endif
1424#endif
1425#ifndef __ConnectionEvents_DISPINTERFACE_DEFINED__
1426#define __ConnectionEvents_DISPINTERFACE_DEFINED__
1427
1428 EXTERN_C const IID DIID_ConnectionEvents;
1429#if defined (__cplusplus) && !defined (CINTERFACE)
1430 MIDL_INTERFACE ("00001400-0000-0010-8000-00AA006D2EA4")
1431 ConnectionEvents : public IDispatch {
1432 };
1433#else
1434 typedef struct ConnectionEventsVtbl {
1435 BEGIN_INTERFACE HRESULT (STDMETHODCALLTYPE *QueryInterface) (ConnectionEvents *This, REFIID riid, _COM_Outptr_ void **ppvObject);
1436 ULONG (STDMETHODCALLTYPE *AddRef) (ConnectionEvents *This);
1437 ULONG (STDMETHODCALLTYPE *Release) (ConnectionEvents *This);
1438 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount) (ConnectionEvents *This, UINT *pctinfo);
1439 HRESULT (STDMETHODCALLTYPE *GetTypeInfo) (ConnectionEvents *This, UINT iTInfo, LCID lcid, ITypeInfo **ppTInfo);
1440 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames) (ConnectionEvents *This, REFIID riid, LPOLESTR *rgszNames, UINT cNames, LCID lcid, DISPID *rgDispId);
1441 HRESULT (STDMETHODCALLTYPE *Invoke) (ConnectionEvents *This, DISPID dispIdMember, REFIID riid, LCID lcid, WORD wFlags, DISPPARAMS *pDispParams, VARIANT *pVarResult, EXCEPINFO *pExcepInfo, UINT *puArgErr);
1442 END_INTERFACE
1443 } ConnectionEventsVtbl;
1444 interface ConnectionEvents {
1445 CONST_VTBL struct ConnectionEventsVtbl *lpVtbl;
1446 };
1447#ifdef COBJMACROS
1448#define ConnectionEvents_QueryInterface(This, riid, ppvObject) ((This)->lpVtbl ->QueryInterface (This, riid, ppvObject))
1449#define ConnectionEvents_AddRef(This) ((This)->lpVtbl ->AddRef (This))
1450#define ConnectionEvents_Release(This) ((This)->lpVtbl ->Release (This))
1451#define ConnectionEvents_GetTypeInfoCount(This, pctinfo) ((This)->lpVtbl ->GetTypeInfoCount (This, pctinfo))
1452#define ConnectionEvents_GetTypeInfo(This, iTInfo, lcid, ppTInfo) ((This)->lpVtbl ->GetTypeInfo (This, iTInfo, lcid, ppTInfo))
1453#define ConnectionEvents_GetIDsOfNames(This, riid, rgszNames, cNames, lcid, rgDispId) ((This)->lpVtbl ->GetIDsOfNames (This, riid, rgszNames, cNames, lcid, rgDispId))
1454#define ConnectionEvents_Invoke(This, dispIdMember, riid, lcid, wFlags, pDispParams, pVarResult, pExcepInfo, puArgErr) ((This)->lpVtbl ->Invoke (This, dispIdMember, riid, lcid, wFlags, pDispParams, pVarResult, pExcepInfo, puArgErr))
1455#endif
1456#endif
1457#endif
1458#ifndef __RecordsetEvents_DISPINTERFACE_DEFINED__
1459#define __RecordsetEvents_DISPINTERFACE_DEFINED__
1460
1461 EXTERN_C const IID DIID_RecordsetEvents;
1462#if defined (__cplusplus) && !defined (CINTERFACE)
1463 MIDL_INTERFACE ("00001266-0000-0010-8000-00AA006D2EA4")
1464 RecordsetEvents : public IDispatch {
1465 };
1466#else
1467 typedef struct RecordsetEventsVtbl {
1468 BEGIN_INTERFACE HRESULT (STDMETHODCALLTYPE *QueryInterface) (RecordsetEvents *This, REFIID riid, _COM_Outptr_ void **ppvObject);
1469 ULONG (STDMETHODCALLTYPE *AddRef) (RecordsetEvents *This);
1470 ULONG (STDMETHODCALLTYPE *Release) (RecordsetEvents *This);
1471 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount) (RecordsetEvents *This, UINT *pctinfo);
1472 HRESULT (STDMETHODCALLTYPE *GetTypeInfo) (RecordsetEvents *This, UINT iTInfo, LCID lcid, ITypeInfo **ppTInfo);
1473 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames) (RecordsetEvents *This, REFIID riid, LPOLESTR *rgszNames, UINT cNames, LCID lcid, DISPID *rgDispId);
1474 HRESULT (STDMETHODCALLTYPE *Invoke) (RecordsetEvents *This, DISPID dispIdMember, REFIID riid, LCID lcid, WORD wFlags, DISPPARAMS *pDispParams, VARIANT *pVarResult, EXCEPINFO *pExcepInfo, UINT *puArgErr);
1475 END_INTERFACE
1476 } RecordsetEventsVtbl;
1477 interface RecordsetEvents {
1478 CONST_VTBL struct RecordsetEventsVtbl *lpVtbl;
1479 };
1480#ifdef COBJMACROS
1481#define RecordsetEvents_QueryInterface(This, riid, ppvObject) ((This)->lpVtbl ->QueryInterface (This, riid, ppvObject))
1482#define RecordsetEvents_AddRef(This) ((This)->lpVtbl ->AddRef (This))
1483#define RecordsetEvents_Release(This) ((This)->lpVtbl ->Release (This))
1484#define RecordsetEvents_GetTypeInfoCount(This, pctinfo) ((This)->lpVtbl ->GetTypeInfoCount (This, pctinfo))
1485#define RecordsetEvents_GetTypeInfo(This, iTInfo, lcid, ppTInfo) ((This)->lpVtbl ->GetTypeInfo (This, iTInfo, lcid, ppTInfo))
1486#define RecordsetEvents_GetIDsOfNames(This, riid, rgszNames, cNames, lcid, rgDispId) ((This)->lpVtbl ->GetIDsOfNames (This, riid, rgszNames, cNames, lcid, rgDispId))
1487#define RecordsetEvents_Invoke(This, dispIdMember, riid, lcid, wFlags, pDispParams, pVarResult, pExcepInfo, puArgErr) ((This)->lpVtbl ->Invoke (This, dispIdMember, riid, lcid, wFlags, pDispParams, pVarResult, pExcepInfo, puArgErr))
1488#endif
1489#endif
1490#endif
1491#ifndef __Connection15_INTERFACE_DEFINED__
1492#define __Connection15_INTERFACE_DEFINED__
1493
1494 EXTERN_C const IID IID_Connection15;
1495#if defined (__cplusplus) && !defined (CINTERFACE)
1496
1497 MIDL_INTERFACE ("00001515-0000-0010-8000-00AA006D2EA4")
1498 Connection15 : public _ADO {
1499 public:
1500 virtual HRESULT STDMETHODCALLTYPE get_ConnectionString (BSTR *pbstr) = 0;
1501 virtual HRESULT STDMETHODCALLTYPE put_ConnectionString (BSTR bstr) = 0;
1502 virtual HRESULT STDMETHODCALLTYPE get_CommandTimeout (LONG *plTimeout) = 0;
1503 virtual HRESULT STDMETHODCALLTYPE put_CommandTimeout (LONG lTimeout) = 0;
1504 virtual HRESULT STDMETHODCALLTYPE get_ConnectionTimeout (LONG *plTimeout) = 0;
1505 virtual HRESULT STDMETHODCALLTYPE put_ConnectionTimeout (LONG lTimeout) = 0;
1506 virtual HRESULT STDMETHODCALLTYPE get_Version (BSTR *pbstr) = 0;
1507 virtual HRESULT STDMETHODCALLTYPE Close (void) = 0;
1508 virtual HRESULT STDMETHODCALLTYPE Execute (BSTR CommandText, VARIANT *RecordsAffected, long Options, _ADORecordset **ppiRset) = 0;
1509 virtual HRESULT STDMETHODCALLTYPE BeginTrans (long *TransactionLevel) = 0;
1510 virtual HRESULT STDMETHODCALLTYPE CommitTrans (void) = 0;
1511 virtual HRESULT STDMETHODCALLTYPE RollbackTrans (void) = 0;
1512 virtual HRESULT STDMETHODCALLTYPE Open (BSTR ConnectionString = NULL, BSTR UserID = NULL, BSTR Password = NULL, long Options = adOptionUnspecified) = 0;
1513 virtual HRESULT STDMETHODCALLTYPE get_Errors (ADOErrors **ppvObject) = 0;
1514 virtual HRESULT STDMETHODCALLTYPE get_DefaultDatabase (BSTR *pbstr) = 0;
1515 virtual HRESULT STDMETHODCALLTYPE put_DefaultDatabase (BSTR bstr) = 0;
1516 virtual HRESULT STDMETHODCALLTYPE get_IsolationLevel (IsolationLevelEnum *Level) = 0;
1517 virtual HRESULT STDMETHODCALLTYPE put_IsolationLevel (IsolationLevelEnum Level) = 0;
1518 virtual HRESULT STDMETHODCALLTYPE get_Attributes (long *plAttr) = 0;
1519 virtual HRESULT STDMETHODCALLTYPE put_Attributes (long lAttr) = 0;
1520 virtual HRESULT STDMETHODCALLTYPE get_CursorLocation (CursorLocationEnum *plCursorLoc) = 0;
1521 virtual HRESULT STDMETHODCALLTYPE put_CursorLocation (CursorLocationEnum lCursorLoc) = 0;
1522 virtual HRESULT STDMETHODCALLTYPE get_Mode (ConnectModeEnum *plMode) = 0;
1523 virtual HRESULT STDMETHODCALLTYPE put_Mode (ConnectModeEnum lMode) = 0;
1524 virtual HRESULT STDMETHODCALLTYPE get_Provider (BSTR *pbstr) = 0;
1525 virtual HRESULT STDMETHODCALLTYPE put_Provider (BSTR Provider) = 0;
1526 virtual HRESULT STDMETHODCALLTYPE get_State (LONG *plObjState) = 0;
1527 virtual HRESULT STDMETHODCALLTYPE OpenSchema (SchemaEnum Schema, VARIANT Restrictions, VARIANT SchemaID, _ADORecordset **pprset) = 0;
1528 };
1529#else
1530 typedef struct Connection15Vtbl {
1531 BEGIN_INTERFACE HRESULT (STDMETHODCALLTYPE *QueryInterface) (Connection15 *This, REFIID riid, _COM_Outptr_ void **ppvObject);
1532 ULONG (STDMETHODCALLTYPE *AddRef) (Connection15 *This);
1533 ULONG (STDMETHODCALLTYPE *Release) (Connection15 *This);
1534 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount) (Connection15 *This, UINT *pctinfo);
1535 HRESULT (STDMETHODCALLTYPE *GetTypeInfo) (Connection15 *This, UINT iTInfo, LCID lcid, ITypeInfo **ppTInfo);
1536 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames) (Connection15 *This, REFIID riid, LPOLESTR *rgszNames, UINT cNames, LCID lcid, DISPID *rgDispId);
1537 HRESULT (STDMETHODCALLTYPE *Invoke) (Connection15 *This, DISPID dispIdMember, REFIID riid, LCID lcid, WORD wFlags, DISPPARAMS *pDispParams, VARIANT *pVarResult, EXCEPINFO *pExcepInfo, UINT *puArgErr);
1538 HRESULT (STDMETHODCALLTYPE *get_Properties) (Connection15 *This, ADOProperties **ppvObject);
1539 HRESULT (STDMETHODCALLTYPE *get_ConnectionString) (Connection15 *This, BSTR *pbstr);
1540 HRESULT (STDMETHODCALLTYPE *put_ConnectionString) (Connection15 *This, BSTR bstr);
1541 HRESULT (STDMETHODCALLTYPE *get_CommandTimeout) (Connection15 *This, LONG *plTimeout);
1542 HRESULT (STDMETHODCALLTYPE *put_CommandTimeout) (Connection15 *This, LONG lTimeout);
1543 HRESULT (STDMETHODCALLTYPE *get_ConnectionTimeout) (Connection15 *This, LONG *plTimeout);
1544 HRESULT (STDMETHODCALLTYPE *put_ConnectionTimeout) (Connection15 *This, LONG lTimeout);
1545 HRESULT (STDMETHODCALLTYPE *get_Version) (Connection15 *This, BSTR *pbstr);
1546 HRESULT (STDMETHODCALLTYPE *Close) (Connection15 *This);
1547 HRESULT (STDMETHODCALLTYPE *Execute) (Connection15 *This, BSTR CommandText, VARIANT *RecordsAffected, long Options, _ADORecordset **ppiRset);
1548 HRESULT (STDMETHODCALLTYPE *BeginTrans) (Connection15 *This, long *TransactionLevel);
1549 HRESULT (STDMETHODCALLTYPE *CommitTrans) (Connection15 *This);
1550 HRESULT (STDMETHODCALLTYPE *RollbackTrans) (Connection15 *This);
1551 HRESULT (STDMETHODCALLTYPE *Open) (Connection15 *This, BSTR ConnectionString, BSTR UserID, BSTR Password, long Options);
1552 HRESULT (STDMETHODCALLTYPE *get_Errors) (Connection15 *This, ADOErrors **ppvObject);
1553 HRESULT (STDMETHODCALLTYPE *get_DefaultDatabase) (Connection15 *This, BSTR *pbstr);
1554 HRESULT (STDMETHODCALLTYPE *put_DefaultDatabase) (Connection15 *This, BSTR bstr);
1555 HRESULT (STDMETHODCALLTYPE *get_IsolationLevel) (Connection15 *This, IsolationLevelEnum *Level);
1556 HRESULT (STDMETHODCALLTYPE *put_IsolationLevel) (Connection15 *This, IsolationLevelEnum Level);
1557 HRESULT (STDMETHODCALLTYPE *get_Attributes) (Connection15 *This, long *plAttr);
1558 HRESULT (STDMETHODCALLTYPE *put_Attributes) (Connection15 *This, long lAttr);
1559 HRESULT (STDMETHODCALLTYPE *get_CursorLocation) (Connection15 *This, CursorLocationEnum *plCursorLoc);
1560 HRESULT (STDMETHODCALLTYPE *put_CursorLocation) (Connection15 *This, CursorLocationEnum lCursorLoc);
1561 HRESULT (STDMETHODCALLTYPE *get_Mode) (Connection15 *This, ConnectModeEnum *plMode);
1562 HRESULT (STDMETHODCALLTYPE *put_Mode) (Connection15 *This, ConnectModeEnum lMode);
1563 HRESULT (STDMETHODCALLTYPE *get_Provider) (Connection15 *This, BSTR *pbstr);
1564 HRESULT (STDMETHODCALLTYPE *put_Provider) (Connection15 *This, BSTR Provider);
1565 HRESULT (STDMETHODCALLTYPE *get_State) (Connection15 *This, LONG *plObjState);
1566 HRESULT (STDMETHODCALLTYPE *OpenSchema) (Connection15 *This, SchemaEnum Schema, VARIANT Restrictions, VARIANT SchemaID, _ADORecordset **pprset);
1567 END_INTERFACE
1568 } Connection15Vtbl;
1569 interface Connection15 {
1570 CONST_VTBL struct Connection15Vtbl *lpVtbl;
1571 };
1572#ifdef COBJMACROS
1573#define Connection15_QueryInterface(This, riid, ppvObject) ((This)->lpVtbl ->QueryInterface (This, riid, ppvObject))
1574#define Connection15_AddRef(This) ((This)->lpVtbl ->AddRef (This))
1575#define Connection15_Release(This) ((This)->lpVtbl ->Release (This))
1576#define Connection15_GetTypeInfoCount(This, pctinfo) ((This)->lpVtbl ->GetTypeInfoCount (This, pctinfo))
1577#define Connection15_GetTypeInfo(This, iTInfo, lcid, ppTInfo) ((This)->lpVtbl ->GetTypeInfo (This, iTInfo, lcid, ppTInfo))
1578#define Connection15_GetIDsOfNames(This, riid, rgszNames, cNames, lcid, rgDispId) ((This)->lpVtbl ->GetIDsOfNames (This, riid, rgszNames, cNames, lcid, rgDispId))
1579#define Connection15_Invoke(This, dispIdMember, riid, lcid, wFlags, pDispParams, pVarResult, pExcepInfo, puArgErr) ((This)->lpVtbl ->Invoke (This, dispIdMember, riid, lcid, wFlags, pDispParams, pVarResult, pExcepInfo, puArgErr))
1580#define Connection15_get_Properties(This, ppvObject) ((This)->lpVtbl ->get_Properties (This, ppvObject))
1581#define Connection15_get_ConnectionString(This, pbstr) ((This)->lpVtbl ->get_ConnectionString (This, pbstr))
1582#define Connection15_put_ConnectionString(This, bstr) ((This)->lpVtbl ->put_ConnectionString (This, bstr))
1583#define Connection15_get_CommandTimeout(This, plTimeout) ((This)->lpVtbl ->get_CommandTimeout (This, plTimeout))
1584#define Connection15_put_CommandTimeout(This, lTimeout) ((This)->lpVtbl ->put_CommandTimeout (This, lTimeout))
1585#define Connection15_get_ConnectionTimeout(This, plTimeout) ((This)->lpVtbl ->get_ConnectionTimeout (This, plTimeout))
1586#define Connection15_put_ConnectionTimeout(This, lTimeout) ((This)->lpVtbl ->put_ConnectionTimeout (This, lTimeout))
1587#define Connection15_get_Version(This, pbstr) ((This)->lpVtbl ->get_Version (This, pbstr))
1588#define Connection15_Close(This) ((This)->lpVtbl ->Close (This))
1589#define Connection15_Execute(This, CommandText, RecordsAffected, Options, ppiRset) ((This)->lpVtbl ->Execute (This, CommandText, RecordsAffected, Options, ppiRset))
1590#define Connection15_BeginTrans(This, TransactionLevel) ((This)->lpVtbl ->BeginTrans (This, TransactionLevel))
1591#define Connection15_CommitTrans(This) ((This)->lpVtbl ->CommitTrans (This))
1592#define Connection15_RollbackTrans(This) ((This)->lpVtbl ->RollbackTrans (This))
1593#define Connection15_Open(This, ConnectionString, UserID, Password, Options) ((This)->lpVtbl ->Open (This, ConnectionString, UserID, Password, Options))
1594#define Connection15_get_Errors(This, ppvObject) ((This)->lpVtbl ->get_Errors (This, ppvObject))
1595#define Connection15_get_DefaultDatabase(This, pbstr) ((This)->lpVtbl ->get_DefaultDatabase (This, pbstr))
1596#define Connection15_put_DefaultDatabase(This, bstr) ((This)->lpVtbl ->put_DefaultDatabase (This, bstr))
1597#define Connection15_get_IsolationLevel(This, Level) ((This)->lpVtbl ->get_IsolationLevel (This, Level))
1598#define Connection15_put_IsolationLevel(This, Level) ((This)->lpVtbl ->put_IsolationLevel (This, Level))
1599#define Connection15_get_Attributes(This, plAttr) ((This)->lpVtbl ->get_Attributes (This, plAttr))
1600#define Connection15_put_Attributes(This, lAttr) ((This)->lpVtbl ->put_Attributes (This, lAttr))
1601#define Connection15_get_CursorLocation(This, plCursorLoc) ((This)->lpVtbl ->get_CursorLocation (This, plCursorLoc))
1602#define Connection15_put_CursorLocation(This, lCursorLoc) ((This)->lpVtbl ->put_CursorLocation (This, lCursorLoc))
1603#define Connection15_get_Mode(This, plMode) ((This)->lpVtbl ->get_Mode (This, plMode))
1604#define Connection15_put_Mode(This, lMode) ((This)->lpVtbl ->put_Mode (This, lMode))
1605#define Connection15_get_Provider(This, pbstr) ((This)->lpVtbl ->get_Provider (This, pbstr))
1606#define Connection15_put_Provider(This, Provider) ((This)->lpVtbl ->put_Provider (This, Provider))
1607#define Connection15_get_State(This, plObjState) ((This)->lpVtbl ->get_State (This, plObjState))
1608#define Connection15_OpenSchema(This, Schema, Restrictions, SchemaID, pprset) ((This)->lpVtbl ->OpenSchema (This, Schema, Restrictions, SchemaID, pprset))
1609#endif
1610#endif
1611#endif
1612#ifndef ___Connection_INTERFACE_DEFINED__
1613#define ___Connection_INTERFACE_DEFINED__
1614
1615 EXTERN_C const IID IID__Connection;
1616#if defined (__cplusplus) && !defined (CINTERFACE)
1617
1618 MIDL_INTERFACE ("00001550-0000-0010-8000-00AA006D2EA4")
1619 _ADOConnection : public Connection15 {
1620 public:
1621 virtual HRESULT STDMETHODCALLTYPE Cancel (void) = 0;
1622 };
1623#else
1624 typedef struct _ConnectionVtbl {
1625 BEGIN_INTERFACE HRESULT (STDMETHODCALLTYPE *QueryInterface) (_ADOConnection *This, REFIID riid, _COM_Outptr_ void **ppvObject);
1626 ULONG (STDMETHODCALLTYPE *AddRef) (_ADOConnection *This);
1627 ULONG (STDMETHODCALLTYPE *Release) (_ADOConnection *This);
1628 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount) (_ADOConnection *This, UINT *pctinfo);
1629 HRESULT (STDMETHODCALLTYPE *GetTypeInfo) (_ADOConnection *This, UINT iTInfo, LCID lcid, ITypeInfo **ppTInfo);
1630 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames) (_ADOConnection *This, REFIID riid, LPOLESTR *rgszNames, UINT cNames, LCID lcid, DISPID *rgDispId);
1631 HRESULT (STDMETHODCALLTYPE *Invoke) (_ADOConnection *This, DISPID dispIdMember, REFIID riid, LCID lcid, WORD wFlags, DISPPARAMS *pDispParams, VARIANT *pVarResult, EXCEPINFO *pExcepInfo, UINT *puArgErr);
1632 HRESULT (STDMETHODCALLTYPE *get_Properties) (_ADOConnection *This, ADOProperties **ppvObject);
1633 HRESULT (STDMETHODCALLTYPE *get_ConnectionString) (_ADOConnection *This, BSTR *pbstr);
1634 HRESULT (STDMETHODCALLTYPE *put_ConnectionString) (_ADOConnection *This, BSTR bstr);
1635 HRESULT (STDMETHODCALLTYPE *get_CommandTimeout) (_ADOConnection *This, LONG *plTimeout);
1636 HRESULT (STDMETHODCALLTYPE *put_CommandTimeout) (_ADOConnection *This, LONG lTimeout);
1637 HRESULT (STDMETHODCALLTYPE *get_ConnectionTimeout) (_ADOConnection *This, LONG *plTimeout);
1638 HRESULT (STDMETHODCALLTYPE *put_ConnectionTimeout) (_ADOConnection *This, LONG lTimeout);
1639 HRESULT (STDMETHODCALLTYPE *get_Version) (_ADOConnection *This, BSTR *pbstr);
1640 HRESULT (STDMETHODCALLTYPE *Close) (_ADOConnection *This);
1641 HRESULT (STDMETHODCALLTYPE *Execute) (_ADOConnection *This, BSTR CommandText, VARIANT *RecordsAffected, long Options, _ADORecordset **ppiRset);
1642 HRESULT (STDMETHODCALLTYPE *BeginTrans) (_ADOConnection *This, long *TransactionLevel);
1643 HRESULT (STDMETHODCALLTYPE *CommitTrans) (_ADOConnection *This);
1644 HRESULT (STDMETHODCALLTYPE *RollbackTrans) (_ADOConnection *This);
1645 HRESULT (STDMETHODCALLTYPE *Open) (_ADOConnection *This, BSTR ConnectionString, BSTR UserID, BSTR Password, long Options);
1646 HRESULT (STDMETHODCALLTYPE *get_Errors) (_ADOConnection *This, ADOErrors **ppvObject);
1647 HRESULT (STDMETHODCALLTYPE *get_DefaultDatabase) (_ADOConnection *This, BSTR *pbstr);
1648 HRESULT (STDMETHODCALLTYPE *put_DefaultDatabase) (_ADOConnection *This, BSTR bstr);
1649 HRESULT (STDMETHODCALLTYPE *get_IsolationLevel) (_ADOConnection *This, IsolationLevelEnum *Level);
1650 HRESULT (STDMETHODCALLTYPE *put_IsolationLevel) (_ADOConnection *This, IsolationLevelEnum Level);
1651 HRESULT (STDMETHODCALLTYPE *get_Attributes) (_ADOConnection *This, long *plAttr);
1652 HRESULT (STDMETHODCALLTYPE *put_Attributes) (_ADOConnection *This, long lAttr);
1653 HRESULT (STDMETHODCALLTYPE *get_CursorLocation) (_ADOConnection *This, CursorLocationEnum *plCursorLoc);
1654 HRESULT (STDMETHODCALLTYPE *put_CursorLocation) (_ADOConnection *This, CursorLocationEnum lCursorLoc);
1655 HRESULT (STDMETHODCALLTYPE *get_Mode) (_ADOConnection *This, ConnectModeEnum *plMode);
1656 HRESULT (STDMETHODCALLTYPE *put_Mode) (_ADOConnection *This, ConnectModeEnum lMode);
1657 HRESULT (STDMETHODCALLTYPE *get_Provider) (_ADOConnection *This, BSTR *pbstr);
1658 HRESULT (STDMETHODCALLTYPE *put_Provider) (_ADOConnection *This, BSTR Provider);
1659 HRESULT (STDMETHODCALLTYPE *get_State) (_ADOConnection *This, LONG *plObjState);
1660 HRESULT (STDMETHODCALLTYPE *OpenSchema) (_ADOConnection *This, SchemaEnum Schema, VARIANT Restrictions, VARIANT SchemaID, _ADORecordset **pprset);
1661 HRESULT (STDMETHODCALLTYPE *Cancel) (_ADOConnection *This);
1662 END_INTERFACE
1663 } _ConnectionVtbl;
1664 interface _Connection {
1665 CONST_VTBL struct _ConnectionVtbl *lpVtbl;
1666 };
1667#ifdef COBJMACROS
1668#define _Connection_QueryInterface(This, riid, ppvObject) ((This)->lpVtbl ->QueryInterface (This, riid, ppvObject))
1669#define _Connection_AddRef(This) ((This)->lpVtbl ->AddRef (This))
1670#define _Connection_Release(This) ((This)->lpVtbl ->Release (This))
1671#define _Connection_GetTypeInfoCount(This, pctinfo) ((This)->lpVtbl ->GetTypeInfoCount (This, pctinfo))
1672#define _Connection_GetTypeInfo(This, iTInfo, lcid, ppTInfo) ((This)->lpVtbl ->GetTypeInfo (This, iTInfo, lcid, ppTInfo))
1673#define _Connection_GetIDsOfNames(This, riid, rgszNames, cNames, lcid, rgDispId) ((This)->lpVtbl ->GetIDsOfNames (This, riid, rgszNames, cNames, lcid, rgDispId))
1674#define _Connection_Invoke(This, dispIdMember, riid, lcid, wFlags, pDispParams, pVarResult, pExcepInfo, puArgErr) ((This)->lpVtbl ->Invoke (This, dispIdMember, riid, lcid, wFlags, pDispParams, pVarResult, pExcepInfo, puArgErr))
1675#define _Connection_get_Properties(This, ppvObject) ((This)->lpVtbl ->get_Properties (This, ppvObject))
1676#define _Connection_get_ConnectionString(This, pbstr) ((This)->lpVtbl ->get_ConnectionString (This, pbstr))
1677#define _Connection_put_ConnectionString(This, bstr) ((This)->lpVtbl ->put_ConnectionString (This, bstr))
1678#define _Connection_get_CommandTimeout(This, plTimeout) ((This)->lpVtbl ->get_CommandTimeout (This, plTimeout))
1679#define _Connection_put_CommandTimeout(This, lTimeout) ((This)->lpVtbl ->put_CommandTimeout (This, lTimeout))
1680#define _Connection_get_ConnectionTimeout(This, plTimeout) ((This)->lpVtbl ->get_ConnectionTimeout (This, plTimeout))
1681#define _Connection_put_ConnectionTimeout(This, lTimeout) ((This)->lpVtbl ->put_ConnectionTimeout (This, lTimeout))
1682#define _Connection_get_Version(This, pbstr) ((This)->lpVtbl ->get_Version (This, pbstr))
1683#define _Connection_Close(This) ((This)->lpVtbl ->Close (This))
1684#define _Connection_Execute(This, CommandText, RecordsAffected, Options, ppiRset) ((This)->lpVtbl ->Execute (This, CommandText, RecordsAffected, Options, ppiRset))
1685#define _Connection_BeginTrans(This, TransactionLevel) ((This)->lpVtbl ->BeginTrans (This, TransactionLevel))
1686#define _Connection_CommitTrans(This) ((This)->lpVtbl ->CommitTrans (This))
1687#define _Connection_RollbackTrans(This) ((This)->lpVtbl ->RollbackTrans (This))
1688#define _Connection_Open(This, ConnectionString, UserID, Password, Options) ((This)->lpVtbl ->Open (This, ConnectionString, UserID, Password, Options))
1689#define _Connection_get_Errors(This, ppvObject) ((This)->lpVtbl ->get_Errors (This, ppvObject))
1690#define _Connection_get_DefaultDatabase(This, pbstr) ((This)->lpVtbl ->get_DefaultDatabase (This, pbstr))
1691#define _Connection_put_DefaultDatabase(This, bstr) ((This)->lpVtbl ->put_DefaultDatabase (This, bstr))
1692#define _Connection_get_IsolationLevel(This, Level) ((This)->lpVtbl ->get_IsolationLevel (This, Level))
1693#define _Connection_put_IsolationLevel(This, Level) ((This)->lpVtbl ->put_IsolationLevel (This, Level))
1694#define _Connection_get_Attributes(This, plAttr) ((This)->lpVtbl ->get_Attributes (This, plAttr))
1695#define _Connection_put_Attributes(This, lAttr) ((This)->lpVtbl ->put_Attributes (This, lAttr))
1696#define _Connection_get_CursorLocation(This, plCursorLoc) ((This)->lpVtbl ->get_CursorLocation (This, plCursorLoc))
1697#define _Connection_put_CursorLocation(This, lCursorLoc) ((This)->lpVtbl ->put_CursorLocation (This, lCursorLoc))
1698#define _Connection_get_Mode(This, plMode) ((This)->lpVtbl ->get_Mode (This, plMode))
1699#define _Connection_put_Mode(This, lMode) ((This)->lpVtbl ->put_Mode (This, lMode))
1700#define _Connection_get_Provider(This, pbstr) ((This)->lpVtbl ->get_Provider (This, pbstr))
1701#define _Connection_put_Provider(This, Provider) ((This)->lpVtbl ->put_Provider (This, Provider))
1702#define _Connection_get_State(This, plObjState) ((This)->lpVtbl ->get_State (This, plObjState))
1703#define _Connection_OpenSchema(This, Schema, Restrictions, SchemaID, pprset) ((This)->lpVtbl ->OpenSchema (This, Schema, Restrictions, SchemaID, pprset))
1704#define _Connection_Cancel(This) ((This)->lpVtbl ->Cancel (This))
1705#endif
1706#endif
1707#endif
1708#ifndef __ADOConnectionConstruction15_INTERFACE_DEFINED__
1709#define __ADOConnectionConstruction15_INTERFACE_DEFINED__
1710
1711 EXTERN_C const IID IID_ADOConnectionConstruction15;
1712#if defined (__cplusplus) && !defined (CINTERFACE)
1713
1714 MIDL_INTERFACE ("00000516-0000-0010-8000-00AA006D2EA4")
1715 ADOConnectionConstruction15 : public IUnknown {
1716 public:
1717 virtual HRESULT STDMETHODCALLTYPE get_DSO (IUnknown **ppDSO) = 0;
1718 virtual HRESULT STDMETHODCALLTYPE get_Session (IUnknown **ppSession) = 0;
1719 virtual HRESULT STDMETHODCALLTYPE WrapDSOandSession (IUnknown *pDSO, IUnknown *pSession) = 0;
1720 };
1721#else
1722 typedef struct ADOConnectionConstruction15Vtbl {
1723 BEGIN_INTERFACE HRESULT (STDMETHODCALLTYPE *QueryInterface) (ADOConnectionConstruction15 *This, REFIID riid, _COM_Outptr_ void **ppvObject);
1724 ULONG (STDMETHODCALLTYPE *AddRef) (ADOConnectionConstruction15 *This);
1725 ULONG (STDMETHODCALLTYPE *Release) (ADOConnectionConstruction15 *This);
1726 HRESULT (STDMETHODCALLTYPE *get_DSO) (ADOConnectionConstruction15 *This, IUnknown **ppDSO);
1727 HRESULT (STDMETHODCALLTYPE *get_Session) (ADOConnectionConstruction15 *This, IUnknown **ppSession);
1728 HRESULT (STDMETHODCALLTYPE *WrapDSOandSession) (ADOConnectionConstruction15 *This, IUnknown *pDSO, IUnknown *pSession);
1729 END_INTERFACE
1730 } ADOConnectionConstruction15Vtbl;
1731 interface ADOConnectionConstruction15 {
1732 CONST_VTBL struct ADOConnectionConstruction15Vtbl *lpVtbl;
1733 };
1734#ifdef COBJMACROS
1735#define ADOConnectionConstruction15_QueryInterface(This, riid, ppvObject) ((This)->lpVtbl ->QueryInterface (This, riid, ppvObject))
1736#define ADOConnectionConstruction15_AddRef(This) ((This)->lpVtbl ->AddRef (This))
1737#define ADOConnectionConstruction15_Release(This) ((This)->lpVtbl ->Release (This))
1738#define ADOConnectionConstruction15_get_DSO(This, ppDSO) ((This)->lpVtbl ->get_DSO (This, ppDSO))
1739#define ADOConnectionConstruction15_get_Session(This, ppSession) ((This)->lpVtbl ->get_Session (This, ppSession))
1740#define ADOConnectionConstruction15_WrapDSOandSession(This, pDSO, pSession) ((This)->lpVtbl ->WrapDSOandSession (This, pDSO, pSession))
1741#endif
1742#endif
1743#endif
1744#ifndef __ADOConnectionConstruction_INTERFACE_DEFINED__
1745#define __ADOConnectionConstruction_INTERFACE_DEFINED__
1746
1747 EXTERN_C const IID IID_ADOConnectionConstruction;
1748#if defined (__cplusplus) && !defined (CINTERFACE)
1749
1750 MIDL_INTERFACE ("00000551-0000-0010-8000-00AA006D2EA4")
1751 ADOConnectionConstruction : public ADOConnectionConstruction15 {
1752 public:
1753 };
1754#else
1755 typedef struct ADOConnectionConstructionVtbl {
1756 BEGIN_INTERFACE HRESULT (STDMETHODCALLTYPE *QueryInterface) (ADOConnectionConstruction *This, REFIID riid, _COM_Outptr_ void **ppvObject);
1757 ULONG (STDMETHODCALLTYPE *AddRef) (ADOConnectionConstruction *This);
1758 ULONG (STDMETHODCALLTYPE *Release) (ADOConnectionConstruction *This);
1759 HRESULT (STDMETHODCALLTYPE *get_DSO) (ADOConnectionConstruction *This, IUnknown **ppDSO);
1760 HRESULT (STDMETHODCALLTYPE *get_Session) (ADOConnectionConstruction *This, IUnknown **ppSession);
1761 HRESULT (STDMETHODCALLTYPE *WrapDSOandSession) (ADOConnectionConstruction *This, IUnknown *pDSO, IUnknown *pSession);
1762 END_INTERFACE
1763 } ADOConnectionConstructionVtbl;
1764 interface ADOConnectionConstruction {
1765 CONST_VTBL struct ADOConnectionConstructionVtbl *lpVtbl;
1766 };
1767#ifdef COBJMACROS
1768#define ADOConnectionConstruction_QueryInterface(This, riid, ppvObject) ((This)->lpVtbl ->QueryInterface (This, riid, ppvObject))
1769#define ADOConnectionConstruction_AddRef(This) ((This)->lpVtbl ->AddRef (This))
1770#define ADOConnectionConstruction_Release(This) ((This)->lpVtbl ->Release (This))
1771#define ADOConnectionConstruction_get_DSO(This, ppDSO) ((This)->lpVtbl ->get_DSO (This, ppDSO))
1772#define ADOConnectionConstruction_get_Session(This, ppSession) ((This)->lpVtbl ->get_Session (This, ppSession))
1773#define ADOConnectionConstruction_WrapDSOandSession(This, pDSO, pSession) ((This)->lpVtbl ->WrapDSOandSession (This, pDSO, pSession))
1774#endif
1775#endif
1776#endif
1777 EXTERN_C const CLSID CLSID_Connection;
1778#ifdef __cplusplus
1779 Connection;
1780#endif
1781#ifndef ___Record_INTERFACE_DEFINED__
1782#define ___Record_INTERFACE_DEFINED__
1783
1784 EXTERN_C const IID IID__Record;
1785#if defined (__cplusplus) && !defined (CINTERFACE)
1786
1787 MIDL_INTERFACE ("00001562-0000-0010-8000-00AA006D2EA4")
1788 _ADORecord : public _ADO {
1789 public:
1790 virtual HRESULT STDMETHODCALLTYPE get_ActiveConnection (VARIANT *pvar) = 0;
1791 virtual HRESULT STDMETHODCALLTYPE put_ActiveConnection (BSTR bstrConn) = 0;
1792 virtual HRESULT STDMETHODCALLTYPE putref_ActiveConnection (_ADOConnection *Con) = 0;
1793 virtual HRESULT STDMETHODCALLTYPE get_State (ObjectStateEnum *pState) = 0;
1794 virtual HRESULT STDMETHODCALLTYPE get_Source (VARIANT *pvar) = 0;
1795 virtual HRESULT STDMETHODCALLTYPE put_Source (BSTR Source) = 0;
1796 virtual HRESULT STDMETHODCALLTYPE putref_Source (IDispatch *Source) = 0;
1797 virtual HRESULT STDMETHODCALLTYPE get_Mode (ConnectModeEnum *pMode) = 0;
1798 virtual HRESULT STDMETHODCALLTYPE put_Mode (ConnectModeEnum Mode) = 0;
1799 virtual HRESULT STDMETHODCALLTYPE get_ParentURL (BSTR *pbstrParentURL) = 0;
1800 virtual HRESULT STDMETHODCALLTYPE MoveRecord (BSTR Source, BSTR Destination, BSTR UserName, BSTR Password, MoveRecordOptionsEnum Options, VARIANT_BOOL Async, BSTR *pbstrNewURL) = 0;
1801 virtual HRESULT STDMETHODCALLTYPE CopyRecord (BSTR Source, BSTR Destination, BSTR UserName, BSTR Password, CopyRecordOptionsEnum Options, VARIANT_BOOL Async, BSTR *pbstrNewURL) = 0;
1802 virtual HRESULT STDMETHODCALLTYPE DeleteRecord (BSTR Source = NULL, VARIANT_BOOL Async = 0) = 0;
1803 virtual HRESULT STDMETHODCALLTYPE Open (VARIANT Source, VARIANT ActiveConnection, ConnectModeEnum Mode = adModeUnknown, RecordCreateOptionsEnum CreateOptions = adFailIfNotExists, RecordOpenOptionsEnum Options = adOpenRecordUnspecified, BSTR UserName = NULL, BSTR Password = NULL) = 0;
1804 virtual HRESULT STDMETHODCALLTYPE Close (void) = 0;
1805 virtual HRESULT STDMETHODCALLTYPE get_Fields (ADOFields **ppFlds) = 0;
1806 virtual HRESULT STDMETHODCALLTYPE get_RecordType (RecordTypeEnum *pType) = 0;
1807 virtual HRESULT STDMETHODCALLTYPE GetChildren (_ADORecordset **ppRSet) = 0;
1808 virtual HRESULT STDMETHODCALLTYPE Cancel (void) = 0;
1809 };
1810#else
1811 typedef struct _RecordVtbl {
1812 BEGIN_INTERFACE HRESULT (STDMETHODCALLTYPE *QueryInterface) (_ADORecord *This, REFIID riid, _COM_Outptr_ void **ppvObject);
1813 ULONG (STDMETHODCALLTYPE *AddRef) (_ADORecord *This);
1814 ULONG (STDMETHODCALLTYPE *Release) (_ADORecord *This);
1815 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount) (_ADORecord *This, UINT *pctinfo);
1816 HRESULT (STDMETHODCALLTYPE *GetTypeInfo) (_ADORecord *This, UINT iTInfo, LCID lcid, ITypeInfo **ppTInfo);
1817 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames) (_ADORecord *This, REFIID riid, LPOLESTR *rgszNames, UINT cNames, LCID lcid, DISPID *rgDispId);
1818 HRESULT (STDMETHODCALLTYPE *Invoke) (_ADORecord *This, DISPID dispIdMember, REFIID riid, LCID lcid, WORD wFlags, DISPPARAMS *pDispParams, VARIANT *pVarResult, EXCEPINFO *pExcepInfo, UINT *puArgErr);
1819 HRESULT (STDMETHODCALLTYPE *get_Properties) (_ADORecord *This, ADOProperties **ppvObject);
1820 HRESULT (STDMETHODCALLTYPE *get_ActiveConnection) (_ADORecord *This, VARIANT *pvar);
1821 HRESULT (STDMETHODCALLTYPE *put_ActiveConnection) (_ADORecord *This, BSTR bstrConn);
1822 HRESULT (STDMETHODCALLTYPE *putref_ActiveADOConnection) (_ADORecord *This, _ADOConnection *Con);
1823 HRESULT (STDMETHODCALLTYPE *get_State) (_ADORecord *This, ObjectStateEnum *pState);
1824 HRESULT (STDMETHODCALLTYPE *get_Source) (_ADORecord *This, VARIANT *pvar);
1825 HRESULT (STDMETHODCALLTYPE *put_Source) (_ADORecord *This, BSTR Source);
1826 HRESULT (STDMETHODCALLTYPE *putref_Source) (_ADORecord *This, IDispatch *Source);
1827 HRESULT (STDMETHODCALLTYPE *get_Mode) (_ADORecord *This, ConnectModeEnum *pMode);
1828 HRESULT (STDMETHODCALLTYPE *put_Mode) (_ADORecord *This, ConnectModeEnum Mode);
1829 HRESULT (STDMETHODCALLTYPE *get_ParentURL) (_ADORecord *This, BSTR *pbstrParentURL);
1830 HRESULT (STDMETHODCALLTYPE *MoveADORecord) (_ADORecord *This, BSTR Source, BSTR Destination, BSTR UserName, BSTR Password, MoveRecordOptionsEnum Options, VARIANT_BOOL Async, BSTR *pbstrNewURL);
1831 HRESULT (STDMETHODCALLTYPE *CopyADORecord) (_ADORecord *This, BSTR Source, BSTR Destination, BSTR UserName, BSTR Password, CopyRecordOptionsEnum Options, VARIANT_BOOL Async, BSTR *pbstrNewURL);
1832 HRESULT (STDMETHODCALLTYPE *DeleteADORecord) (_ADORecord *This, BSTR Source, VARIANT_BOOL Async);
1833 HRESULT (STDMETHODCALLTYPE *Open) (_ADORecord *This, VARIANT Source, VARIANT ActiveConnection, ConnectModeEnum Mode, RecordCreateOptionsEnum CreateOptions, RecordOpenOptionsEnum Options, BSTR UserName, BSTR Password);
1834 HRESULT (STDMETHODCALLTYPE *Close) (_ADORecord *This);
1835 HRESULT (STDMETHODCALLTYPE *get_Fields) (_ADORecord *This, ADOFields **ppFlds);
1836 HRESULT (STDMETHODCALLTYPE *get_RecordType) (_ADORecord *This, RecordTypeEnum *pType);
1837 HRESULT (STDMETHODCALLTYPE *GetChildren) (_ADORecord *This, _ADORecordset **ppRSet);
1838 HRESULT (STDMETHODCALLTYPE *Cancel) (_ADORecord *This);
1839 END_INTERFACE
1840 } _RecordVtbl;
1841 interface _Record {
1842 CONST_VTBL struct _RecordVtbl *lpVtbl;
1843 };
1844#ifdef COBJMACROS
1845#define _Record_QueryInterface(This, riid, ppvObject) ((This)->lpVtbl ->QueryInterface (This, riid, ppvObject))
1846#define _Record_AddRef(This) ((This)->lpVtbl ->AddRef (This))
1847#define _Record_Release(This) ((This)->lpVtbl ->Release (This))
1848#define _Record_GetTypeInfoCount(This, pctinfo) ((This)->lpVtbl ->GetTypeInfoCount (This, pctinfo))
1849#define _Record_GetTypeInfo(This, iTInfo, lcid, ppTInfo) ((This)->lpVtbl ->GetTypeInfo (This, iTInfo, lcid, ppTInfo))
1850#define _Record_GetIDsOfNames(This, riid, rgszNames, cNames, lcid, rgDispId) ((This)->lpVtbl ->GetIDsOfNames (This, riid, rgszNames, cNames, lcid, rgDispId))
1851#define _Record_Invoke(This, dispIdMember, riid, lcid, wFlags, pDispParams, pVarResult, pExcepInfo, puArgErr) ((This)->lpVtbl ->Invoke (This, dispIdMember, riid, lcid, wFlags, pDispParams, pVarResult, pExcepInfo, puArgErr))
1852#define _Record_get_Properties(This, ppvObject) ((This)->lpVtbl ->get_Properties (This, ppvObject))
1853#define _Record_get_ActiveConnection(This, pvar) ((This)->lpVtbl ->get_ActiveConnection (This, pvar))
1854#define _Record_put_ActiveConnection(This, bstrConn) ((This)->lpVtbl ->put_ActiveConnection (This, bstrConn))
1855#define _Record_putref_ActiveConnection(This, Con) ((This)->lpVtbl ->putref_ActiveConnection (This, Con))
1856#define _Record_get_State(This, pState) ((This)->lpVtbl ->get_State (This, pState))
1857#define _Record_get_Source(This, pvar) ((This)->lpVtbl ->get_Source (This, pvar))
1858#define _Record_put_Source(This, Source) ((This)->lpVtbl ->put_Source (This, Source))
1859#define _Record_putref_Source(This, Source) ((This)->lpVtbl ->putref_Source (This, Source))
1860#define _Record_get_Mode(This, pMode) ((This)->lpVtbl ->get_Mode (This, pMode))
1861#define _Record_put_Mode(This, Mode) ((This)->lpVtbl ->put_Mode (This, Mode))
1862#define _Record_get_ParentURL(This, pbstrParentURL) ((This)->lpVtbl ->get_ParentURL (This, pbstrParentURL))
1863#define _Record_MoveRecord(This, Source, Destination, UserName, Password, Options, Async, pbstrNewURL) ((This)->lpVtbl ->MoveRecord (This, Source, Destination, UserName, Password, Options, Async, pbstrNewURL))
1864#define _Record_CopyRecord(This, Source, Destination, UserName, Password, Options, Async, pbstrNewURL) ((This)->lpVtbl ->CopyRecord (This, Source, Destination, UserName, Password, Options, Async, pbstrNewURL))
1865#define _Record_DeleteRecord(This, Source, Async) ((This)->lpVtbl ->DeleteRecord (This, Source, Async))
1866#define _Record_Open(This, Source, ActiveConnection, Mode, CreateOptions, Options, UserName, Password) ((This)->lpVtbl ->Open (This, Source, ActiveConnection, Mode, CreateOptions, Options, UserName, Password))
1867#define _Record_Close(This) ((This)->lpVtbl ->Close (This))
1868#define _Record_get_Fields(This, ppFlds) ((This)->lpVtbl ->get_Fields (This, ppFlds))
1869#define _Record_get_RecordType(This, pType) ((This)->lpVtbl ->get_RecordType (This, pType))
1870#define _Record_GetChildren(This, ppRSet) ((This)->lpVtbl ->GetChildren (This, ppRSet))
1871#define _Record_Cancel(This) ((This)->lpVtbl ->Cancel (This))
1872#endif
1873#endif
1874#endif
1875 EXTERN_C const CLSID CLSID_Record;
1876#ifdef __cplusplus
1877 Record;
1878#endif
1879#ifndef ___Stream_INTERFACE_DEFINED__
1880#define ___Stream_INTERFACE_DEFINED__
1881
1882 EXTERN_C const IID IID__Stream;
1883#if defined (__cplusplus) && !defined (CINTERFACE)
1884
1885 MIDL_INTERFACE ("00001565-0000-0010-8000-00AA006D2EA4")
1886 _ADOStream : public IDispatch {
1887 public:
1888 virtual HRESULT STDMETHODCALLTYPE get_Size (long *pSize) = 0;
1889 virtual HRESULT STDMETHODCALLTYPE get_EOS (VARIANT_BOOL *pEOS) = 0;
1890 virtual HRESULT STDMETHODCALLTYPE get_Position (long *pPos) = 0;
1891 virtual HRESULT STDMETHODCALLTYPE put_Position (long Position) = 0;
1892 virtual HRESULT STDMETHODCALLTYPE get_Type (StreamTypeEnum *pType) = 0;
1893 virtual HRESULT STDMETHODCALLTYPE put_Type (StreamTypeEnum Type) = 0;
1894 virtual HRESULT STDMETHODCALLTYPE get_LineSeparator (LineSeparatorEnum *pLS) = 0;
1895 virtual HRESULT STDMETHODCALLTYPE put_LineSeparator (LineSeparatorEnum LineSeparator) = 0;
1896 virtual HRESULT STDMETHODCALLTYPE get_State (ObjectStateEnum *pState) = 0;
1897 virtual HRESULT STDMETHODCALLTYPE get_Mode (ConnectModeEnum *pMode) = 0;
1898 virtual HRESULT STDMETHODCALLTYPE put_Mode (ConnectModeEnum Mode) = 0;
1899 virtual HRESULT STDMETHODCALLTYPE get_Charset (BSTR *pbstrCharset) = 0;
1900 virtual HRESULT STDMETHODCALLTYPE put_Charset (BSTR Charset) = 0;
1901 virtual HRESULT STDMETHODCALLTYPE Read (long NumBytes, VARIANT *pVal) = 0;
1902 virtual HRESULT STDMETHODCALLTYPE Open (VARIANT Source, ConnectModeEnum Mode = adModeUnknown, StreamOpenOptionsEnum Options = adOpenStreamUnspecified, BSTR UserName = NULL, BSTR Password = NULL) = 0;
1903 virtual HRESULT STDMETHODCALLTYPE Close (void) = 0;
1904 virtual HRESULT STDMETHODCALLTYPE SkipLine (void) = 0;
1905 virtual HRESULT STDMETHODCALLTYPE Write (VARIANT Buffer) = 0;
1906 virtual HRESULT STDMETHODCALLTYPE SetEOS (void) = 0;
1907 virtual HRESULT STDMETHODCALLTYPE CopyTo (_ADOStream *DestStream, long CharNumber = -1) = 0;
1908 virtual HRESULT STDMETHODCALLTYPE Flush (void) = 0;
1909 virtual HRESULT STDMETHODCALLTYPE SaveToFile (BSTR FileName, SaveOptionsEnum Options = adSaveCreateNotExist) = 0;
1910 virtual HRESULT STDMETHODCALLTYPE LoadFromFile (BSTR FileName) = 0;
1911 virtual HRESULT STDMETHODCALLTYPE ReadText (long NumChars, BSTR *pbstr) = 0;
1912 virtual HRESULT STDMETHODCALLTYPE WriteText (BSTR Data, StreamWriteEnum Options = adWriteChar) = 0;
1913 virtual HRESULT STDMETHODCALLTYPE Cancel (void) = 0;
1914 };
1915#else
1916 typedef struct _StreamVtbl {
1917 BEGIN_INTERFACE HRESULT (STDMETHODCALLTYPE *QueryInterface) (_ADOStream *This, REFIID riid, _COM_Outptr_ void **ppvObject);
1918 ULONG (STDMETHODCALLTYPE *AddRef) (_ADOStream *This);
1919 ULONG (STDMETHODCALLTYPE *Release) (_ADOStream *This);
1920 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount) (_ADOStream *This, UINT *pctinfo);
1921 HRESULT (STDMETHODCALLTYPE *GetTypeInfo) (_ADOStream *This, UINT iTInfo, LCID lcid, ITypeInfo **ppTInfo);
1922 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames) (_ADOStream *This, REFIID riid, LPOLESTR *rgszNames, UINT cNames, LCID lcid, DISPID *rgDispId);
1923 HRESULT (STDMETHODCALLTYPE *Invoke) (_ADOStream *This, DISPID dispIdMember, REFIID riid, LCID lcid, WORD wFlags, DISPPARAMS *pDispParams, VARIANT *pVarResult, EXCEPINFO *pExcepInfo, UINT *puArgErr);
1924 HRESULT (STDMETHODCALLTYPE *get_Size) (_ADOStream *This, long *pSize);
1925 HRESULT (STDMETHODCALLTYPE *get_EOS) (_ADOStream *This, VARIANT_BOOL *pEOS);
1926 HRESULT (STDMETHODCALLTYPE *get_Position) (_ADOStream *This, long *pPos);
1927 HRESULT (STDMETHODCALLTYPE *put_Position) (_ADOStream *This, long Position);
1928 HRESULT (STDMETHODCALLTYPE *get_Type) (_ADOStream *This, StreamTypeEnum *pType);
1929 HRESULT (STDMETHODCALLTYPE *put_Type) (_ADOStream *This, StreamTypeEnum Type);
1930 HRESULT (STDMETHODCALLTYPE *get_LineSeparator) (_ADOStream *This, LineSeparatorEnum *pLS);
1931 HRESULT (STDMETHODCALLTYPE *put_LineSeparator) (_ADOStream *This, LineSeparatorEnum LineSeparator);
1932 HRESULT (STDMETHODCALLTYPE *get_State) (_ADOStream *This, ObjectStateEnum *pState);
1933 HRESULT (STDMETHODCALLTYPE *get_Mode) (_ADOStream *This, ConnectModeEnum *pMode);
1934 HRESULT (STDMETHODCALLTYPE *put_Mode) (_ADOStream *This, ConnectModeEnum Mode);
1935 HRESULT (STDMETHODCALLTYPE *get_Charset) (_ADOStream *This, BSTR *pbstrCharset);
1936 HRESULT (STDMETHODCALLTYPE *put_Charset) (_ADOStream *This, BSTR Charset);
1937 HRESULT (STDMETHODCALLTYPE *Read) (_ADOStream *This, long NumBytes, VARIANT *pVal);
1938 HRESULT (STDMETHODCALLTYPE *Open) (_ADOStream *This, VARIANT Source, ConnectModeEnum Mode, StreamOpenOptionsEnum Options, BSTR UserName, BSTR Password);
1939 HRESULT (STDMETHODCALLTYPE *Close) (_ADOStream *This);
1940 HRESULT (STDMETHODCALLTYPE *SkipLine) (_ADOStream *This);
1941 HRESULT (STDMETHODCALLTYPE *Write) (_ADOStream *This, VARIANT Buffer);
1942 HRESULT (STDMETHODCALLTYPE *SetEOS) (_ADOStream *This);
1943 HRESULT (STDMETHODCALLTYPE *CopyTo) (_ADOStream *This, _ADOStream *DestStream, long CharNumber);
1944 HRESULT (STDMETHODCALLTYPE *Flush) (_ADOStream *This);
1945 HRESULT (STDMETHODCALLTYPE *SaveToFile) (_ADOStream *This, BSTR FileName, SaveOptionsEnum Options);
1946 HRESULT (STDMETHODCALLTYPE *LoadFromFile) (_ADOStream *This, BSTR FileName);
1947 HRESULT (STDMETHODCALLTYPE *ReadText) (_ADOStream *This, long NumChars, BSTR *pbstr);
1948 HRESULT (STDMETHODCALLTYPE *WriteText) (_ADOStream *This, BSTR Data, StreamWriteEnum Options);
1949 HRESULT (STDMETHODCALLTYPE *Cancel) (_ADOStream *This);
1950 END_INTERFACE
1951 } _StreamVtbl;
1952 interface _Stream {
1953 CONST_VTBL struct _StreamVtbl *lpVtbl;
1954 };
1955#ifdef COBJMACROS
1956#define _Stream_QueryInterface(This, riid, ppvObject) ((This)->lpVtbl ->QueryInterface (This, riid, ppvObject))
1957#define _Stream_AddRef(This) ((This)->lpVtbl ->AddRef (This))
1958#define _Stream_Release(This) ((This)->lpVtbl ->Release (This))
1959#define _Stream_GetTypeInfoCount(This, pctinfo) ((This)->lpVtbl ->GetTypeInfoCount (This, pctinfo))
1960#define _Stream_GetTypeInfo(This, iTInfo, lcid, ppTInfo) ((This)->lpVtbl ->GetTypeInfo (This, iTInfo, lcid, ppTInfo))
1961#define _Stream_GetIDsOfNames(This, riid, rgszNames, cNames, lcid, rgDispId) ((This)->lpVtbl ->GetIDsOfNames (This, riid, rgszNames, cNames, lcid, rgDispId))
1962#define _Stream_Invoke(This, dispIdMember, riid, lcid, wFlags, pDispParams, pVarResult, pExcepInfo, puArgErr) ((This)->lpVtbl ->Invoke (This, dispIdMember, riid, lcid, wFlags, pDispParams, pVarResult, pExcepInfo, puArgErr))
1963#define _Stream_get_Size(This, pSize) ((This)->lpVtbl ->get_Size (This, pSize))
1964#define _Stream_get_EOS(This, pEOS) ((This)->lpVtbl ->get_EOS (This, pEOS))
1965#define _Stream_get_Position(This, pPos) ((This)->lpVtbl ->get_Position (This, pPos))
1966#define _Stream_put_Position(This, Position) ((This)->lpVtbl ->put_Position (This, Position))
1967#define _Stream_get_Type(This, pType) ((This)->lpVtbl ->get_Type (This, pType))
1968#define _Stream_put_Type(This, Type) ((This)->lpVtbl ->put_Type (This, Type))
1969#define _Stream_get_LineSeparator(This, pLS) ((This)->lpVtbl ->get_LineSeparator (This, pLS))
1970#define _Stream_put_LineSeparator(This, LineSeparator) ((This)->lpVtbl ->put_LineSeparator (This, LineSeparator))
1971#define _Stream_get_State(This, pState) ((This)->lpVtbl ->get_State (This, pState))
1972#define _Stream_get_Mode(This, pMode) ((This)->lpVtbl ->get_Mode (This, pMode))
1973#define _Stream_put_Mode(This, Mode) ((This)->lpVtbl ->put_Mode (This, Mode))
1974#define _Stream_get_Charset(This, pbstrCharset) ((This)->lpVtbl ->get_Charset (This, pbstrCharset))
1975#define _Stream_put_Charset(This, Charset) ((This)->lpVtbl ->put_Charset (This, Charset))
1976#define _Stream_Read(This, NumBytes, pVal) ((This)->lpVtbl ->Read (This, NumBytes, pVal))
1977#define _Stream_Open(This, Source, Mode, Options, UserName, Password) ((This)->lpVtbl ->Open (This, Source, Mode, Options, UserName, Password))
1978#define _Stream_Close(This) ((This)->lpVtbl ->Close (This))
1979#define _Stream_SkipLine(This) ((This)->lpVtbl ->SkipLine (This))
1980#define _Stream_Write(This, Buffer) ((This)->lpVtbl ->Write (This, Buffer))
1981#define _Stream_SetEOS(This) ((This)->lpVtbl ->SetEOS (This))
1982#define _Stream_CopyTo(This, DestStream, CharNumber) ((This)->lpVtbl ->CopyTo (This, DestStream, CharNumber))
1983#define _Stream_Flush(This) ((This)->lpVtbl ->Flush (This))
1984#define _Stream_SaveToFile(This, FileName, Options) ((This)->lpVtbl ->SaveToFile (This, FileName, Options))
1985#define _Stream_LoadFromFile(This, FileName) ((This)->lpVtbl ->LoadFromFile (This, FileName))
1986#define _Stream_ReadText(This, NumChars, pbstr) ((This)->lpVtbl ->ReadText (This, NumChars, pbstr))
1987#define _Stream_WriteText(This, Data, Options) ((This)->lpVtbl ->WriteText (This, Data, Options))
1988#define _Stream_Cancel(This) ((This)->lpVtbl ->Cancel (This))
1989#endif
1990#endif
1991#endif
1992 EXTERN_C const CLSID CLSID_Stream;
1993#ifdef __cplusplus
1994 Stream;
1995#endif
1996#ifndef __ADORecordConstruction_INTERFACE_DEFINED__
1997#define __ADORecordConstruction_INTERFACE_DEFINED__
1998
1999 EXTERN_C const IID IID_ADORecordConstruction;
2000#if defined (__cplusplus) && !defined (CINTERFACE)
2001
2002 MIDL_INTERFACE ("00000567-0000-0010-8000-00AA006D2EA4")
2003 ADORecordConstruction : public IDispatch {
2004 public:
2005 virtual HRESULT STDMETHODCALLTYPE get_Row (IUnknown **ppRow) = 0;
2006 virtual HRESULT STDMETHODCALLTYPE put_Row (IUnknown *pRow) = 0;
2007 virtual HRESULT STDMETHODCALLTYPE put_ParentRow (IUnknown *pRow) = 0;
2008 };
2009#else
2010 typedef struct ADORecordConstructionVtbl {
2011 BEGIN_INTERFACE HRESULT (STDMETHODCALLTYPE *QueryInterface) (ADORecordConstruction *This, REFIID riid, _COM_Outptr_ void **ppvObject);
2012 ULONG (STDMETHODCALLTYPE *AddRef) (ADORecordConstruction *This);
2013 ULONG (STDMETHODCALLTYPE *Release) (ADORecordConstruction *This);
2014 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount) (ADORecordConstruction *This, UINT *pctinfo);
2015 HRESULT (STDMETHODCALLTYPE *GetTypeInfo) (ADORecordConstruction *This, UINT iTInfo, LCID lcid, ITypeInfo **ppTInfo);
2016 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames) (ADORecordConstruction *This, REFIID riid, LPOLESTR *rgszNames, UINT cNames, LCID lcid, DISPID *rgDispId);
2017 HRESULT (STDMETHODCALLTYPE *Invoke) (ADORecordConstruction *This, DISPID dispIdMember, REFIID riid, LCID lcid, WORD wFlags, DISPPARAMS *pDispParams, VARIANT *pVarResult, EXCEPINFO *pExcepInfo, UINT *puArgErr);
2018 HRESULT (STDMETHODCALLTYPE *get_Row) (ADORecordConstruction *This, IUnknown **ppRow);
2019 HRESULT (STDMETHODCALLTYPE *put_Row) (ADORecordConstruction *This, IUnknown *pRow);
2020 HRESULT (STDMETHODCALLTYPE *put_ParentRow) (ADORecordConstruction *This, IUnknown *pRow);
2021 END_INTERFACE
2022 } ADORecordConstructionVtbl;
2023 interface ADORecordConstruction {
2024 CONST_VTBL struct ADORecordConstructionVtbl *lpVtbl;
2025 };
2026#ifdef COBJMACROS
2027#define ADORecordConstruction_QueryInterface(This, riid, ppvObject) ((This)->lpVtbl ->QueryInterface (This, riid, ppvObject))
2028#define ADORecordConstruction_AddRef(This) ((This)->lpVtbl ->AddRef (This))
2029#define ADORecordConstruction_Release(This) ((This)->lpVtbl ->Release (This))
2030#define ADORecordConstruction_GetTypeInfoCount(This, pctinfo) ((This)->lpVtbl ->GetTypeInfoCount (This, pctinfo))
2031#define ADORecordConstruction_GetTypeInfo(This, iTInfo, lcid, ppTInfo) ((This)->lpVtbl ->GetTypeInfo (This, iTInfo, lcid, ppTInfo))
2032#define ADORecordConstruction_GetIDsOfNames(This, riid, rgszNames, cNames, lcid, rgDispId) ((This)->lpVtbl ->GetIDsOfNames (This, riid, rgszNames, cNames, lcid, rgDispId))
2033#define ADORecordConstruction_Invoke(This, dispIdMember, riid, lcid, wFlags, pDispParams, pVarResult, pExcepInfo, puArgErr) ((This)->lpVtbl ->Invoke (This, dispIdMember, riid, lcid, wFlags, pDispParams, pVarResult, pExcepInfo, puArgErr))
2034#define ADORecordConstruction_get_Row(This, ppRow) ((This)->lpVtbl ->get_Row (This, ppRow))
2035#define ADORecordConstruction_put_Row(This, pRow) ((This)->lpVtbl ->put_Row (This, pRow))
2036#define ADORecordConstruction_put_ParentRow(This, pRow) ((This)->lpVtbl ->put_ParentRow (This, pRow))
2037#endif
2038#endif
2039#endif
2040#ifndef __ADOStreamConstruction_INTERFACE_DEFINED__
2041#define __ADOStreamConstruction_INTERFACE_DEFINED__
2042
2043 EXTERN_C const IID IID_ADOStreamConstruction;
2044#if defined (__cplusplus) && !defined (CINTERFACE)
2045
2046 MIDL_INTERFACE ("00000568-0000-0010-8000-00AA006D2EA4")
2047 ADOStreamConstruction : public IDispatch {
2048 public:
2049 virtual HRESULT STDMETHODCALLTYPE get_Stream (IUnknown **ppStm) = 0;
2050 virtual HRESULT STDMETHODCALLTYPE put_Stream (IUnknown *pStm) = 0;
2051 };
2052#else
2053 typedef struct ADOStreamConstructionVtbl {
2054 BEGIN_INTERFACE HRESULT (STDMETHODCALLTYPE *QueryInterface) (ADOStreamConstruction *This, REFIID riid, _COM_Outptr_ void **ppvObject);
2055 ULONG (STDMETHODCALLTYPE *AddRef) (ADOStreamConstruction *This);
2056 ULONG (STDMETHODCALLTYPE *Release) (ADOStreamConstruction *This);
2057 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount) (ADOStreamConstruction *This, UINT *pctinfo);
2058 HRESULT (STDMETHODCALLTYPE *GetTypeInfo) (ADOStreamConstruction *This, UINT iTInfo, LCID lcid, ITypeInfo **ppTInfo);
2059 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames) (ADOStreamConstruction *This, REFIID riid, LPOLESTR *rgszNames, UINT cNames, LCID lcid, DISPID *rgDispId);
2060 HRESULT (STDMETHODCALLTYPE *Invoke) (ADOStreamConstruction *This, DISPID dispIdMember, REFIID riid, LCID lcid, WORD wFlags, DISPPARAMS *pDispParams, VARIANT *pVarResult, EXCEPINFO *pExcepInfo, UINT *puArgErr);
2061 HRESULT (STDMETHODCALLTYPE *get_Stream) (ADOStreamConstruction *This, IUnknown **ppStm);
2062 HRESULT (STDMETHODCALLTYPE *put_Stream) (ADOStreamConstruction *This, IUnknown *pStm);
2063 END_INTERFACE
2064 } ADOStreamConstructionVtbl;
2065 interface ADOStreamConstruction {
2066 CONST_VTBL struct ADOStreamConstructionVtbl *lpVtbl;
2067 };
2068#ifdef COBJMACROS
2069#define ADOStreamConstruction_QueryInterface(This, riid, ppvObject) ((This)->lpVtbl ->QueryInterface (This, riid, ppvObject))
2070#define ADOStreamConstruction_AddRef(This) ((This)->lpVtbl ->AddRef (This))
2071#define ADOStreamConstruction_Release(This) ((This)->lpVtbl ->Release (This))
2072#define ADOStreamConstruction_GetTypeInfoCount(This, pctinfo) ((This)->lpVtbl ->GetTypeInfoCount (This, pctinfo))
2073#define ADOStreamConstruction_GetTypeInfo(This, iTInfo, lcid, ppTInfo) ((This)->lpVtbl ->GetTypeInfo (This, iTInfo, lcid, ppTInfo))
2074#define ADOStreamConstruction_GetIDsOfNames(This, riid, rgszNames, cNames, lcid, rgDispId) ((This)->lpVtbl ->GetIDsOfNames (This, riid, rgszNames, cNames, lcid, rgDispId))
2075#define ADOStreamConstruction_Invoke(This, dispIdMember, riid, lcid, wFlags, pDispParams, pVarResult, pExcepInfo, puArgErr) ((This)->lpVtbl ->Invoke (This, dispIdMember, riid, lcid, wFlags, pDispParams, pVarResult, pExcepInfo, puArgErr))
2076#define ADOStreamConstruction_get_Stream(This, ppStm) ((This)->lpVtbl ->get_Stream (This, ppStm))
2077#define ADOStreamConstruction_put_Stream(This, pStm) ((This)->lpVtbl ->put_Stream (This, pStm))
2078#endif
2079#endif
2080#endif
2081#ifndef __ADOCommandConstruction_INTERFACE_DEFINED__
2082#define __ADOCommandConstruction_INTERFACE_DEFINED__
2083
2084 EXTERN_C const IID IID_ADOCommandConstruction;
2085#if defined (__cplusplus) && !defined (CINTERFACE)
2086
2087 MIDL_INTERFACE ("00000517-0000-0010-8000-00AA006D2EA4")
2088 ADOCommandConstruction : public IUnknown {
2089 public:
2090 virtual HRESULT STDMETHODCALLTYPE get_OLEDBCommand (IUnknown **ppOLEDBCommand) = 0;
2091 virtual HRESULT STDMETHODCALLTYPE put_OLEDBCommand (IUnknown *pOLEDBCommand) = 0;
2092 };
2093#else
2094 typedef struct ADOCommandConstructionVtbl {
2095 BEGIN_INTERFACE HRESULT (STDMETHODCALLTYPE *QueryInterface) (ADOCommandConstruction *This, REFIID riid, _COM_Outptr_ void **ppvObject);
2096 ULONG (STDMETHODCALLTYPE *AddRef) (ADOCommandConstruction *This);
2097 ULONG (STDMETHODCALLTYPE *Release) (ADOCommandConstruction *This);
2098 HRESULT (STDMETHODCALLTYPE *get_OLEDBCommand) (ADOCommandConstruction *This, IUnknown **ppOLEDBCommand);
2099 HRESULT (STDMETHODCALLTYPE *put_OLEDBCommand) (ADOCommandConstruction *This, IUnknown *pOLEDBCommand);
2100 END_INTERFACE
2101 } ADOCommandConstructionVtbl;
2102 interface ADOCommandConstruction {
2103 CONST_VTBL struct ADOCommandConstructionVtbl *lpVtbl;
2104 };
2105#ifdef COBJMACROS
2106#define ADOCommandConstruction_QueryInterface(This, riid, ppvObject) ((This)->lpVtbl ->QueryInterface (This, riid, ppvObject))
2107#define ADOCommandConstruction_AddRef(This) ((This)->lpVtbl ->AddRef (This))
2108#define ADOCommandConstruction_Release(This) ((This)->lpVtbl ->Release (This))
2109#define ADOCommandConstruction_get_OLEDBCommand(This, ppOLEDBCommand) ((This)->lpVtbl ->get_OLEDBCommand (This, ppOLEDBCommand))
2110#define ADOCommandConstruction_put_OLEDBCommand(This, pOLEDBCommand) ((This)->lpVtbl ->put_OLEDBCommand (This, pOLEDBCommand))
2111#endif
2112#endif
2113#endif
2114 EXTERN_C const CLSID CLSID_Command;
2115#ifdef __cplusplus
2116 Command;
2117#endif
2118 EXTERN_C const CLSID CLSID_Recordset;
2119#ifdef __cplusplus
2120 Recordset;
2121#endif
2122#ifndef __Recordset15_INTERFACE_DEFINED__
2123#define __Recordset15_INTERFACE_DEFINED__
2124
2125 EXTERN_C const IID IID_Recordset15;
2126#if defined (__cplusplus) && !defined (CINTERFACE)
2127
2128 MIDL_INTERFACE ("0000150E-0000-0010-8000-00AA006D2EA4")
2129 Recordset15 : public _ADO {
2130 public:
2131 virtual HRESULT STDMETHODCALLTYPE get_AbsolutePosition (PositionEnum *pl) = 0;
2132 virtual HRESULT STDMETHODCALLTYPE put_AbsolutePosition (PositionEnum Position) = 0;
2133 virtual HRESULT STDMETHODCALLTYPE putref_ActiveConnection (IDispatch *pconn) = 0;
2134 virtual HRESULT STDMETHODCALLTYPE put_ActiveConnection (VARIANT vConn) = 0;
2135 virtual HRESULT STDMETHODCALLTYPE get_ActiveConnection (VARIANT *pvar) = 0;
2136 virtual HRESULT STDMETHODCALLTYPE get_BOF (VARIANT_BOOL *pb) = 0;
2137 virtual HRESULT STDMETHODCALLTYPE get_Bookmark (VARIANT *pvBookmark) = 0;
2138 virtual HRESULT STDMETHODCALLTYPE put_Bookmark (VARIANT vBookmark) = 0;
2139 virtual HRESULT STDMETHODCALLTYPE get_CacheSize (long *pl) = 0;
2140 virtual HRESULT STDMETHODCALLTYPE put_CacheSize (long CacheSize) = 0;
2141 virtual HRESULT STDMETHODCALLTYPE get_CursorType (CursorTypeEnum *plCursorType) = 0;
2142 virtual HRESULT STDMETHODCALLTYPE put_CursorType (CursorTypeEnum lCursorType) = 0;
2143 virtual HRESULT STDMETHODCALLTYPE get_EOF (VARIANT_BOOL *pb) = 0;
2144 virtual HRESULT STDMETHODCALLTYPE get_Fields (ADOFields **ppvObject) = 0;
2145 virtual HRESULT STDMETHODCALLTYPE get_LockType (LockTypeEnum *plLockType) = 0;
2146 virtual HRESULT STDMETHODCALLTYPE put_LockType (LockTypeEnum lLockType) = 0;
2147 virtual HRESULT STDMETHODCALLTYPE get_MaxRecords (long *plMaxRecords) = 0;
2148 virtual HRESULT STDMETHODCALLTYPE put_MaxRecords (long lMaxRecords) = 0;
2149 virtual HRESULT STDMETHODCALLTYPE get_RecordCount (long *pl) = 0;
2150 virtual HRESULT STDMETHODCALLTYPE putref_Source (IDispatch *pcmd) = 0;
2151 virtual HRESULT STDMETHODCALLTYPE put_Source (BSTR bstrConn) = 0;
2152 virtual HRESULT STDMETHODCALLTYPE get_Source (VARIANT *pvSource) = 0;
2153 virtual HRESULT STDMETHODCALLTYPE AddNew (VARIANT FieldList, VARIANT Values) = 0;
2154 virtual HRESULT STDMETHODCALLTYPE CancelUpdate (void) = 0;
2155 virtual HRESULT STDMETHODCALLTYPE Close (void) = 0;
2156 virtual HRESULT STDMETHODCALLTYPE Delete (AffectEnum AffectRecords = adAffectCurrent) = 0;
2157 virtual HRESULT STDMETHODCALLTYPE GetRows (long Rows, VARIANT Start, VARIANT Fields, VARIANT *pvar) = 0;
2158 virtual HRESULT STDMETHODCALLTYPE Move (long NumRecords, VARIANT Start) = 0;
2159 virtual HRESULT STDMETHODCALLTYPE MoveNext (void) = 0;
2160 virtual HRESULT STDMETHODCALLTYPE MovePrevious (void) = 0;
2161 virtual HRESULT STDMETHODCALLTYPE MoveFirst (void) = 0;
2162 virtual HRESULT STDMETHODCALLTYPE MoveLast (void) = 0;
2163 virtual HRESULT STDMETHODCALLTYPE Open (VARIANT Source, VARIANT ActiveConnection, CursorTypeEnum CursorType = adOpenUnspecified, LockTypeEnum LockType = adLockUnspecified, LONG Options = adCmdUnspecified) = 0;
2164 virtual HRESULT STDMETHODCALLTYPE Requery (LONG Options = adOptionUnspecified) = 0;
2165 virtual HRESULT STDMETHODCALLTYPE _xResync (AffectEnum AffectRecords = adAffectAll) = 0;
2166 virtual HRESULT STDMETHODCALLTYPE Update (VARIANT Fields, VARIANT Values) = 0;
2167 virtual HRESULT STDMETHODCALLTYPE get_AbsolutePage (PositionEnum *pl) = 0;
2168 virtual HRESULT STDMETHODCALLTYPE put_AbsolutePage (PositionEnum Page) = 0;
2169 virtual HRESULT STDMETHODCALLTYPE get_EditMode (EditModeEnum *pl) = 0;
2170 virtual HRESULT STDMETHODCALLTYPE get_Filter (VARIANT *Criteria) = 0;
2171 virtual HRESULT STDMETHODCALLTYPE put_Filter (VARIANT Criteria) = 0;
2172 virtual HRESULT STDMETHODCALLTYPE get_PageCount (long *pl) = 0;
2173 virtual HRESULT STDMETHODCALLTYPE get_PageSize (long *pl) = 0;
2174 virtual HRESULT STDMETHODCALLTYPE put_PageSize (long PageSize) = 0;
2175 virtual HRESULT STDMETHODCALLTYPE get_Sort (BSTR *Criteria) = 0;
2176 virtual HRESULT STDMETHODCALLTYPE put_Sort (BSTR Criteria) = 0;
2177 virtual HRESULT STDMETHODCALLTYPE get_Status (long *pl) = 0;
2178 virtual HRESULT STDMETHODCALLTYPE get_State (LONG *plObjState) = 0;
2179 virtual HRESULT STDMETHODCALLTYPE _xClone (_ADORecordset **ppvObject) = 0;
2180 virtual HRESULT STDMETHODCALLTYPE UpdateBatch (AffectEnum AffectRecords = adAffectAll) = 0;
2181 virtual HRESULT STDMETHODCALLTYPE CancelBatch (AffectEnum AffectRecords = adAffectAll) = 0;
2182 virtual HRESULT STDMETHODCALLTYPE get_CursorLocation (CursorLocationEnum *plCursorLoc) = 0;
2183 virtual HRESULT STDMETHODCALLTYPE put_CursorLocation (CursorLocationEnum lCursorLoc) = 0;
2184 virtual HRESULT STDMETHODCALLTYPE NextRecordset (VARIANT *RecordsAffected, _ADORecordset **ppiRs) = 0;
2185 virtual HRESULT STDMETHODCALLTYPE Supports (CursorOptionEnum CursorOptions, VARIANT_BOOL *pb) = 0;
2186 virtual HRESULT STDMETHODCALLTYPE get_Collect (VARIANT Index, VARIANT *pvar) = 0;
2187 virtual HRESULT STDMETHODCALLTYPE put_Collect (VARIANT Index, VARIANT value) = 0;
2188 virtual HRESULT STDMETHODCALLTYPE get_MarshalOptions (MarshalOptionsEnum *peMarshal) = 0;
2189 virtual HRESULT STDMETHODCALLTYPE put_MarshalOptions (MarshalOptionsEnum eMarshal) = 0;
2190 virtual HRESULT STDMETHODCALLTYPE Find (BSTR Criteria, long SkipRecords, SearchDirectionEnum SearchDirection, VARIANT Start) = 0;
2191 };
2192#else
2193 typedef struct Recordset15Vtbl {
2194 BEGIN_INTERFACE HRESULT (STDMETHODCALLTYPE *QueryInterface) (Recordset15 *This, REFIID riid, _COM_Outptr_ void **ppvObject);
2195 ULONG (STDMETHODCALLTYPE *AddRef) (Recordset15 *This);
2196 ULONG (STDMETHODCALLTYPE *Release) (Recordset15 *This);
2197 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount) (Recordset15 *This, UINT *pctinfo);
2198 HRESULT (STDMETHODCALLTYPE *GetTypeInfo) (Recordset15 *This, UINT iTInfo, LCID lcid, ITypeInfo **ppTInfo);
2199 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames) (Recordset15 *This, REFIID riid, LPOLESTR *rgszNames, UINT cNames, LCID lcid, DISPID *rgDispId);
2200 HRESULT (STDMETHODCALLTYPE *Invoke) (Recordset15 *This, DISPID dispIdMember, REFIID riid, LCID lcid, WORD wFlags, DISPPARAMS *pDispParams, VARIANT *pVarResult, EXCEPINFO *pExcepInfo, UINT *puArgErr);
2201 HRESULT (STDMETHODCALLTYPE *get_Properties) (Recordset15 *This, ADOProperties **ppvObject);
2202 HRESULT (STDMETHODCALLTYPE *get_AbsolutePosition) (Recordset15 *This, PositionEnum *pl);
2203 HRESULT (STDMETHODCALLTYPE *put_AbsolutePosition) (Recordset15 *This, PositionEnum Position);
2204 HRESULT (STDMETHODCALLTYPE *putref_ActiveADOConnection) (Recordset15 *This, IDispatch *pconn);
2205 HRESULT (STDMETHODCALLTYPE *put_ActiveConnection) (Recordset15 *This, VARIANT vConn);
2206 HRESULT (STDMETHODCALLTYPE *get_ActiveConnection) (Recordset15 *This, VARIANT *pvar);
2207 HRESULT (STDMETHODCALLTYPE *get_BOF) (Recordset15 *This, VARIANT_BOOL *pb);
2208 HRESULT (STDMETHODCALLTYPE *get_Bookmark) (Recordset15 *This, VARIANT *pvBookmark);
2209 HRESULT (STDMETHODCALLTYPE *put_Bookmark) (Recordset15 *This, VARIANT vBookmark);
2210 HRESULT (STDMETHODCALLTYPE *get_CacheSize) (Recordset15 *This, long *pl);
2211 HRESULT (STDMETHODCALLTYPE *put_CacheSize) (Recordset15 *This, long CacheSize);
2212 HRESULT (STDMETHODCALLTYPE *get_CursorType) (Recordset15 *This, CursorTypeEnum *plCursorType);
2213 HRESULT (STDMETHODCALLTYPE *put_CursorType) (Recordset15 *This, CursorTypeEnum lCursorType);
2214 HRESULT (STDMETHODCALLTYPE *get_EOF) (Recordset15 *This, VARIANT_BOOL *pb);
2215 HRESULT (STDMETHODCALLTYPE *get_Fields) (Recordset15 *This, ADOFields **ppvObject);
2216 HRESULT (STDMETHODCALLTYPE *get_LockType) (Recordset15 *This, LockTypeEnum *plLockType);
2217 HRESULT (STDMETHODCALLTYPE *put_LockType) (Recordset15 *This, LockTypeEnum lLockType);
2218 HRESULT (STDMETHODCALLTYPE *get_MaxRecords) (Recordset15 *This, long *plMaxRecords);
2219 HRESULT (STDMETHODCALLTYPE *put_MaxRecords) (Recordset15 *This, long lMaxRecords);
2220 HRESULT (STDMETHODCALLTYPE *get_RecordCount) (Recordset15 *This, long *pl);
2221 HRESULT (STDMETHODCALLTYPE *putref_Source) (Recordset15 *This, IDispatch *pcmd);
2222 HRESULT (STDMETHODCALLTYPE *put_Source) (Recordset15 *This, BSTR bstrConn);
2223 HRESULT (STDMETHODCALLTYPE *get_Source) (Recordset15 *This, VARIANT *pvSource);
2224 HRESULT (STDMETHODCALLTYPE *AddNew) (Recordset15 *This, VARIANT FieldList, VARIANT Values);
2225 HRESULT (STDMETHODCALLTYPE *CancelUpdate) (Recordset15 *This);
2226 HRESULT (STDMETHODCALLTYPE *Close) (Recordset15 *This);
2227 HRESULT (STDMETHODCALLTYPE *Delete) (Recordset15 *This, AffectEnum AffectRecords);
2228 HRESULT (STDMETHODCALLTYPE *GetRows) (Recordset15 *This, long Rows, VARIANT Start, VARIANT Fields, VARIANT *pvar);
2229 HRESULT (STDMETHODCALLTYPE *Move) (Recordset15 *This, long NumRecords, VARIANT Start);
2230 HRESULT (STDMETHODCALLTYPE *MoveNext) (Recordset15 *This);
2231 HRESULT (STDMETHODCALLTYPE *MovePrevious) (Recordset15 *This);
2232 HRESULT (STDMETHODCALLTYPE *MoveFirst) (Recordset15 *This);
2233 HRESULT (STDMETHODCALLTYPE *MoveLast) (Recordset15 *This);
2234 HRESULT (STDMETHODCALLTYPE *Open) (Recordset15 *This, VARIANT Source, VARIANT ActiveConnection, CursorTypeEnum CursorType, LockTypeEnum LockType, LONG Options);
2235 HRESULT (STDMETHODCALLTYPE *Requery) (Recordset15 *This, LONG Options);
2236 HRESULT (STDMETHODCALLTYPE *_xResync) (Recordset15 *This, AffectEnum AffectRecords);
2237 HRESULT (STDMETHODCALLTYPE *Update) (Recordset15 *This, VARIANT Fields, VARIANT Values);
2238 HRESULT (STDMETHODCALLTYPE *get_AbsolutePage) (Recordset15 *This, PositionEnum *pl);
2239 HRESULT (STDMETHODCALLTYPE *put_AbsolutePage) (Recordset15 *This, PositionEnum Page);
2240 HRESULT (STDMETHODCALLTYPE *get_EditMode) (Recordset15 *This, EditModeEnum *pl);
2241 HRESULT (STDMETHODCALLTYPE *get_Filter) (Recordset15 *This, VARIANT *Criteria);
2242 HRESULT (STDMETHODCALLTYPE *put_Filter) (Recordset15 *This, VARIANT Criteria);
2243 HRESULT (STDMETHODCALLTYPE *get_PageCount) (Recordset15 *This, long *pl);
2244 HRESULT (STDMETHODCALLTYPE *get_PageSize) (Recordset15 *This, long *pl);
2245 HRESULT (STDMETHODCALLTYPE *put_PageSize) (Recordset15 *This, long PageSize);
2246 HRESULT (STDMETHODCALLTYPE *get_Sort) (Recordset15 *This, BSTR *Criteria);
2247 HRESULT (STDMETHODCALLTYPE *put_Sort) (Recordset15 *This, BSTR Criteria);
2248 HRESULT (STDMETHODCALLTYPE *get_Status) (Recordset15 *This, long *pl);
2249 HRESULT (STDMETHODCALLTYPE *get_State) (Recordset15 *This, LONG *plObjState);
2250 HRESULT (STDMETHODCALLTYPE *_xClone) (Recordset15 *This, _ADORecordset **ppvObject);
2251 HRESULT (STDMETHODCALLTYPE *UpdateBatch) (Recordset15 *This, AffectEnum AffectRecords);
2252 HRESULT (STDMETHODCALLTYPE *CancelBatch) (Recordset15 *This, AffectEnum AffectRecords);
2253 HRESULT (STDMETHODCALLTYPE *get_CursorLocation) (Recordset15 *This, CursorLocationEnum *plCursorLoc);
2254 HRESULT (STDMETHODCALLTYPE *put_CursorLocation) (Recordset15 *This, CursorLocationEnum lCursorLoc);
2255 HRESULT (STDMETHODCALLTYPE *NextADORecordset) (Recordset15 *This, VARIANT *RecordsAffected, _ADORecordset **ppiRs);
2256 HRESULT (STDMETHODCALLTYPE *Supports) (Recordset15 *This, CursorOptionEnum CursorOptions, VARIANT_BOOL *pb);
2257 HRESULT (STDMETHODCALLTYPE *get_Collect) (Recordset15 *This, VARIANT Index, VARIANT *pvar);
2258 HRESULT (STDMETHODCALLTYPE *put_Collect) (Recordset15 *This, VARIANT Index, VARIANT value);
2259 HRESULT (STDMETHODCALLTYPE *get_MarshalOptions) (Recordset15 *This, MarshalOptionsEnum *peMarshal);
2260 HRESULT (STDMETHODCALLTYPE *put_MarshalOptions) (Recordset15 *This, MarshalOptionsEnum eMarshal);
2261 HRESULT (STDMETHODCALLTYPE *Find) (Recordset15 *This, BSTR Criteria, long SkipRecords, SearchDirectionEnum SearchDirection, VARIANT Start);
2262 END_INTERFACE
2263 } Recordset15Vtbl;
2264 interface Recordset15 {
2265 CONST_VTBL struct Recordset15Vtbl *lpVtbl;
2266 };
2267#ifdef COBJMACROS
2268#define Recordset15_QueryInterface(This, riid, ppvObject) ((This)->lpVtbl ->QueryInterface (This, riid, ppvObject))
2269#define Recordset15_AddRef(This) ((This)->lpVtbl ->AddRef (This))
2270#define Recordset15_Release(This) ((This)->lpVtbl ->Release (This))
2271#define Recordset15_GetTypeInfoCount(This, pctinfo) ((This)->lpVtbl ->GetTypeInfoCount (This, pctinfo))
2272#define Recordset15_GetTypeInfo(This, iTInfo, lcid, ppTInfo) ((This)->lpVtbl ->GetTypeInfo (This, iTInfo, lcid, ppTInfo))
2273#define Recordset15_GetIDsOfNames(This, riid, rgszNames, cNames, lcid, rgDispId) ((This)->lpVtbl ->GetIDsOfNames (This, riid, rgszNames, cNames, lcid, rgDispId))
2274#define Recordset15_Invoke(This, dispIdMember, riid, lcid, wFlags, pDispParams, pVarResult, pExcepInfo, puArgErr) ((This)->lpVtbl ->Invoke (This, dispIdMember, riid, lcid, wFlags, pDispParams, pVarResult, pExcepInfo, puArgErr))
2275#define Recordset15_get_Properties(This, ppvObject) ((This)->lpVtbl ->get_Properties (This, ppvObject))
2276#define Recordset15_get_AbsolutePosition(This, pl) ((This)->lpVtbl ->get_AbsolutePosition (This, pl))
2277#define Recordset15_put_AbsolutePosition(This, Position) ((This)->lpVtbl ->put_AbsolutePosition (This, Position))
2278#define Recordset15_putref_ActiveConnection(This, pconn) ((This)->lpVtbl ->putref_ActiveConnection (This, pconn))
2279#define Recordset15_put_ActiveConnection(This, vConn) ((This)->lpVtbl ->put_ActiveConnection (This, vConn))
2280#define Recordset15_get_ActiveConnection(This, pvar) ((This)->lpVtbl ->get_ActiveConnection (This, pvar))
2281#define Recordset15_get_BOF(This, pb) ((This)->lpVtbl ->get_BOF (This, pb))
2282#define Recordset15_get_Bookmark(This, pvBookmark) ((This)->lpVtbl ->get_Bookmark (This, pvBookmark))
2283#define Recordset15_put_Bookmark(This, vBookmark) ((This)->lpVtbl ->put_Bookmark (This, vBookmark))
2284#define Recordset15_get_CacheSize(This, pl) ((This)->lpVtbl ->get_CacheSize (This, pl))
2285#define Recordset15_put_CacheSize(This, CacheSize) ((This)->lpVtbl ->put_CacheSize (This, CacheSize))
2286#define Recordset15_get_CursorType(This, plCursorType) ((This)->lpVtbl ->get_CursorType (This, plCursorType))
2287#define Recordset15_put_CursorType(This, lCursorType) ((This)->lpVtbl ->put_CursorType (This, lCursorType))
2288#define Recordset15_get_EOF(This, pb) ((This)->lpVtbl ->get_EOF (This, pb))
2289#define Recordset15_get_Fields(This, ppvObject) ((This)->lpVtbl ->get_Fields (This, ppvObject))
2290#define Recordset15_get_LockType(This, plLockType) ((This)->lpVtbl ->get_LockType (This, plLockType))
2291#define Recordset15_put_LockType(This, lLockType) ((This)->lpVtbl ->put_LockType (This, lLockType))
2292#define Recordset15_get_MaxRecords(This, plMaxRecords) ((This)->lpVtbl ->get_MaxRecords (This, plMaxRecords))
2293#define Recordset15_put_MaxRecords(This, lMaxRecords) ((This)->lpVtbl ->put_MaxRecords (This, lMaxRecords))
2294#define Recordset15_get_RecordCount(This, pl) ((This)->lpVtbl ->get_RecordCount (This, pl))
2295#define Recordset15_putref_Source(This, pcmd) ((This)->lpVtbl ->putref_Source (This, pcmd))
2296#define Recordset15_put_Source(This, bstrConn) ((This)->lpVtbl ->put_Source (This, bstrConn))
2297#define Recordset15_get_Source(This, pvSource) ((This)->lpVtbl ->get_Source (This, pvSource))
2298#define Recordset15_AddNew(This, FieldList, Values) ((This)->lpVtbl ->AddNew (This, FieldList, Values))
2299#define Recordset15_CancelUpdate(This) ((This)->lpVtbl ->CancelUpdate (This))
2300#define Recordset15_Close(This) ((This)->lpVtbl ->Close (This))
2301#define Recordset15_Delete(This, AffectRecords) ((This)->lpVtbl ->Delete (This, AffectRecords))
2302#define Recordset15_GetRows(This, Rows, Start, Fields, pvar) ((This)->lpVtbl ->GetRows (This, Rows, Start, Fields, pvar))
2303#define Recordset15_Move(This, NumRecords, Start) ((This)->lpVtbl ->Move (This, NumRecords, Start))
2304#define Recordset15_MoveNext(This) ((This)->lpVtbl ->MoveNext (This))
2305#define Recordset15_MovePrevious(This) ((This)->lpVtbl ->MovePrevious (This))
2306#define Recordset15_MoveFirst(This) ((This)->lpVtbl ->MoveFirst (This))
2307#define Recordset15_MoveLast(This) ((This)->lpVtbl ->MoveLast (This))
2308#define Recordset15_Open(This, Source, ActiveConnection, CursorType, LockType, Options) ((This)->lpVtbl ->Open (This, Source, ActiveConnection, CursorType, LockType, Options))
2309#define Recordset15_Requery(This, Options) ((This)->lpVtbl ->Requery (This, Options))
2310#define Recordset15__xResync(This, AffectRecords) ((This)->lpVtbl ->_xResync (This, AffectRecords))
2311#define Recordset15_Update(This, Fields, Values) ((This)->lpVtbl ->Update (This, Fields, Values))
2312#define Recordset15_get_AbsolutePage(This, pl) ((This)->lpVtbl ->get_AbsolutePage (This, pl))
2313#define Recordset15_put_AbsolutePage(This, Page) ((This)->lpVtbl ->put_AbsolutePage (This, Page))
2314#define Recordset15_get_EditMode(This, pl) ((This)->lpVtbl ->get_EditMode (This, pl))
2315#define Recordset15_get_Filter(This, Criteria) ((This)->lpVtbl ->get_Filter (This, Criteria))
2316#define Recordset15_put_Filter(This, Criteria) ((This)->lpVtbl ->put_Filter (This, Criteria))
2317#define Recordset15_get_PageCount(This, pl) ((This)->lpVtbl ->get_PageCount (This, pl))
2318#define Recordset15_get_PageSize(This, pl) ((This)->lpVtbl ->get_PageSize (This, pl))
2319#define Recordset15_put_PageSize(This, PageSize) ((This)->lpVtbl ->put_PageSize (This, PageSize))
2320#define Recordset15_get_Sort(This, Criteria) ((This)->lpVtbl ->get_Sort (This, Criteria))
2321#define Recordset15_put_Sort(This, Criteria) ((This)->lpVtbl ->put_Sort (This, Criteria))
2322#define Recordset15_get_Status(This, pl) ((This)->lpVtbl ->get_Status (This, pl))
2323#define Recordset15_get_State(This, plObjState) ((This)->lpVtbl ->get_State (This, plObjState))
2324#define Recordset15__xClone(This, ppvObject) ((This)->lpVtbl ->_xClone (This, ppvObject))
2325#define Recordset15_UpdateBatch(This, AffectRecords) ((This)->lpVtbl ->UpdateBatch (This, AffectRecords))
2326#define Recordset15_CancelBatch(This, AffectRecords) ((This)->lpVtbl ->CancelBatch (This, AffectRecords))
2327#define Recordset15_get_CursorLocation(This, plCursorLoc) ((This)->lpVtbl ->get_CursorLocation (This, plCursorLoc))
2328#define Recordset15_put_CursorLocation(This, lCursorLoc) ((This)->lpVtbl ->put_CursorLocation (This, lCursorLoc))
2329#define Recordset15_NextRecordset(This, RecordsAffected, ppiRs) ((This)->lpVtbl ->NextRecordset (This, RecordsAffected, ppiRs))
2330#define Recordset15_Supports(This, CursorOptions, pb) ((This)->lpVtbl ->Supports (This, CursorOptions, pb))
2331#define Recordset15_get_Collect(This, Index, pvar) ((This)->lpVtbl ->get_Collect (This, Index, pvar))
2332#define Recordset15_put_Collect(This, Index, value) ((This)->lpVtbl ->put_Collect (This, Index, value))
2333#define Recordset15_get_MarshalOptions(This, peMarshal) ((This)->lpVtbl ->get_MarshalOptions (This, peMarshal))
2334#define Recordset15_put_MarshalOptions(This, eMarshal) ((This)->lpVtbl ->put_MarshalOptions (This, eMarshal))
2335#define Recordset15_Find(This, Criteria, SkipRecords, SearchDirection, Start) ((This)->lpVtbl ->Find (This, Criteria, SkipRecords, SearchDirection, Start))
2336#endif
2337#endif
2338#endif
2339#ifndef __Recordset20_INTERFACE_DEFINED__
2340#define __Recordset20_INTERFACE_DEFINED__
2341
2342 EXTERN_C const IID IID_Recordset20;
2343#if defined (__cplusplus) && !defined (CINTERFACE)
2344
2345 MIDL_INTERFACE ("0000154F-0000-0010-8000-00AA006D2EA4")
2346 Recordset20 : public Recordset15 {
2347 public:
2348 virtual HRESULT STDMETHODCALLTYPE Cancel (void) = 0;
2349 virtual HRESULT STDMETHODCALLTYPE get_DataSource (IUnknown **ppunkDataSource) = 0;
2350 virtual HRESULT STDMETHODCALLTYPE putref_DataSource (IUnknown *punkDataSource) = 0;
2351 virtual HRESULT STDMETHODCALLTYPE _xSave (BSTR FileName = NULL, PersistFormatEnum PersistFormat = adPersistADTG) = 0;
2352 virtual HRESULT STDMETHODCALLTYPE get_ActiveCommand (IDispatch **ppCmd) = 0;
2353 virtual HRESULT STDMETHODCALLTYPE put_StayInSync (VARIANT_BOOL bStayInSync) = 0;
2354 virtual HRESULT STDMETHODCALLTYPE get_StayInSync (VARIANT_BOOL *pbStayInSync) = 0;
2355 virtual HRESULT STDMETHODCALLTYPE GetString (StringFormatEnum StringFormat, long NumRows, BSTR ColumnDelimeter, BSTR RowDelimeter, BSTR NullExpr, BSTR *pRetString) = 0;
2356 virtual HRESULT STDMETHODCALLTYPE get_DataMember (BSTR *pbstrDataMember) = 0;
2357 virtual HRESULT STDMETHODCALLTYPE put_DataMember (BSTR bstrDataMember) = 0;
2358 virtual HRESULT STDMETHODCALLTYPE CompareBookmarks (VARIANT Bookmark1, VARIANT Bookmark2, CompareEnum *pCompare) = 0;
2359 virtual HRESULT STDMETHODCALLTYPE Clone (LockTypeEnum LockType, _ADORecordset **ppvObject) = 0;
2360 virtual HRESULT STDMETHODCALLTYPE Resync (AffectEnum AffectRecords = adAffectAll, ResyncEnum ResyncValues = adResyncAllValues) = 0;
2361 };
2362#else
2363 typedef struct Recordset20Vtbl {
2364 BEGIN_INTERFACE HRESULT (STDMETHODCALLTYPE *QueryInterface) (Recordset20 *This, REFIID riid, _COM_Outptr_ void **ppvObject);
2365 ULONG (STDMETHODCALLTYPE *AddRef) (Recordset20 *This);
2366 ULONG (STDMETHODCALLTYPE *Release) (Recordset20 *This);
2367 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount) (Recordset20 *This, UINT *pctinfo);
2368 HRESULT (STDMETHODCALLTYPE *GetTypeInfo) (Recordset20 *This, UINT iTInfo, LCID lcid, ITypeInfo **ppTInfo);
2369 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames) (Recordset20 *This, REFIID riid, LPOLESTR *rgszNames, UINT cNames, LCID lcid, DISPID *rgDispId);
2370 HRESULT (STDMETHODCALLTYPE *Invoke) (Recordset20 *This, DISPID dispIdMember, REFIID riid, LCID lcid, WORD wFlags, DISPPARAMS *pDispParams, VARIANT *pVarResult, EXCEPINFO *pExcepInfo, UINT *puArgErr);
2371 HRESULT (STDMETHODCALLTYPE *get_Properties) (Recordset20 *This, ADOProperties **ppvObject);
2372 HRESULT (STDMETHODCALLTYPE *get_AbsolutePosition) (Recordset20 *This, PositionEnum *pl);
2373 HRESULT (STDMETHODCALLTYPE *put_AbsolutePosition) (Recordset20 *This, PositionEnum Position);
2374 HRESULT (STDMETHODCALLTYPE *putref_ActiveADOConnection) (Recordset20 *This, IDispatch *pconn);
2375 HRESULT (STDMETHODCALLTYPE *put_ActiveConnection) (Recordset20 *This, VARIANT vConn);
2376 HRESULT (STDMETHODCALLTYPE *get_ActiveConnection) (Recordset20 *This, VARIANT *pvar);
2377 HRESULT (STDMETHODCALLTYPE *get_BOF) (Recordset20 *This, VARIANT_BOOL *pb);
2378 HRESULT (STDMETHODCALLTYPE *get_Bookmark) (Recordset20 *This, VARIANT *pvBookmark);
2379 HRESULT (STDMETHODCALLTYPE *put_Bookmark) (Recordset20 *This, VARIANT vBookmark);
2380 HRESULT (STDMETHODCALLTYPE *get_CacheSize) (Recordset20 *This, long *pl);
2381 HRESULT (STDMETHODCALLTYPE *put_CacheSize) (Recordset20 *This, long CacheSize);
2382 HRESULT (STDMETHODCALLTYPE *get_CursorType) (Recordset20 *This, CursorTypeEnum *plCursorType);
2383 HRESULT (STDMETHODCALLTYPE *put_CursorType) (Recordset20 *This, CursorTypeEnum lCursorType);
2384 HRESULT (STDMETHODCALLTYPE *get_EOF) (Recordset20 *This, VARIANT_BOOL *pb);
2385 HRESULT (STDMETHODCALLTYPE *get_Fields) (Recordset20 *This, ADOFields **ppvObject);
2386 HRESULT (STDMETHODCALLTYPE *get_LockType) (Recordset20 *This, LockTypeEnum *plLockType);
2387 HRESULT (STDMETHODCALLTYPE *put_LockType) (Recordset20 *This, LockTypeEnum lLockType);
2388 HRESULT (STDMETHODCALLTYPE *get_MaxRecords) (Recordset20 *This, long *plMaxRecords);
2389 HRESULT (STDMETHODCALLTYPE *put_MaxRecords) (Recordset20 *This, long lMaxRecords);
2390 HRESULT (STDMETHODCALLTYPE *get_RecordCount) (Recordset20 *This, long *pl);
2391 HRESULT (STDMETHODCALLTYPE *putref_Source) (Recordset20 *This, IDispatch *pcmd);
2392 HRESULT (STDMETHODCALLTYPE *put_Source) (Recordset20 *This, BSTR bstrConn);
2393 HRESULT (STDMETHODCALLTYPE *get_Source) (Recordset20 *This, VARIANT *pvSource);
2394 HRESULT (STDMETHODCALLTYPE *AddNew) (Recordset20 *This, VARIANT FieldList, VARIANT Values);
2395 HRESULT (STDMETHODCALLTYPE *CancelUpdate) (Recordset20 *This);
2396 HRESULT (STDMETHODCALLTYPE *Close) (Recordset20 *This);
2397 HRESULT (STDMETHODCALLTYPE *Delete) (Recordset20 *This, AffectEnum AffectRecords);
2398 HRESULT (STDMETHODCALLTYPE *GetRows) (Recordset20 *This, long Rows, VARIANT Start, VARIANT Fields, VARIANT *pvar);
2399 HRESULT (STDMETHODCALLTYPE *Move) (Recordset20 *This, long NumRecords, VARIANT Start);
2400 HRESULT (STDMETHODCALLTYPE *MoveNext) (Recordset20 *This);
2401 HRESULT (STDMETHODCALLTYPE *MovePrevious) (Recordset20 *This);
2402 HRESULT (STDMETHODCALLTYPE *MoveFirst) (Recordset20 *This);
2403 HRESULT (STDMETHODCALLTYPE *MoveLast) (Recordset20 *This);
2404 HRESULT (STDMETHODCALLTYPE *Open) (Recordset20 *This, VARIANT Source, VARIANT ActiveConnection, CursorTypeEnum CursorType, LockTypeEnum LockType, LONG Options);
2405 HRESULT (STDMETHODCALLTYPE *Requery) (Recordset20 *This, LONG Options);
2406 HRESULT (STDMETHODCALLTYPE *_xResync) (Recordset20 *This, AffectEnum AffectRecords);
2407 HRESULT (STDMETHODCALLTYPE *Update) (Recordset20 *This, VARIANT Fields, VARIANT Values);
2408 HRESULT (STDMETHODCALLTYPE *get_AbsolutePage) (Recordset20 *This, PositionEnum *pl);
2409 HRESULT (STDMETHODCALLTYPE *put_AbsolutePage) (Recordset20 *This, PositionEnum Page);
2410 HRESULT (STDMETHODCALLTYPE *get_EditMode) (Recordset20 *This, EditModeEnum *pl);
2411 HRESULT (STDMETHODCALLTYPE *get_Filter) (Recordset20 *This, VARIANT *Criteria);
2412 HRESULT (STDMETHODCALLTYPE *put_Filter) (Recordset20 *This, VARIANT Criteria);
2413 HRESULT (STDMETHODCALLTYPE *get_PageCount) (Recordset20 *This, long *pl);
2414 HRESULT (STDMETHODCALLTYPE *get_PageSize) (Recordset20 *This, long *pl);
2415 HRESULT (STDMETHODCALLTYPE *put_PageSize) (Recordset20 *This, long PageSize);
2416 HRESULT (STDMETHODCALLTYPE *get_Sort) (Recordset20 *This, BSTR *Criteria);
2417 HRESULT (STDMETHODCALLTYPE *put_Sort) (Recordset20 *This, BSTR Criteria);
2418 HRESULT (STDMETHODCALLTYPE *get_Status) (Recordset20 *This, long *pl);
2419 HRESULT (STDMETHODCALLTYPE *get_State) (Recordset20 *This, LONG *plObjState);
2420 HRESULT (STDMETHODCALLTYPE *_xClone) (Recordset20 *This, _ADORecordset **ppvObject);
2421 HRESULT (STDMETHODCALLTYPE *UpdateBatch) (Recordset20 *This, AffectEnum AffectRecords);
2422 HRESULT (STDMETHODCALLTYPE *CancelBatch) (Recordset20 *This, AffectEnum AffectRecords);
2423 HRESULT (STDMETHODCALLTYPE *get_CursorLocation) (Recordset20 *This, CursorLocationEnum *plCursorLoc);
2424 HRESULT (STDMETHODCALLTYPE *put_CursorLocation) (Recordset20 *This, CursorLocationEnum lCursorLoc);
2425 HRESULT (STDMETHODCALLTYPE *NextADORecordset) (Recordset20 *This, VARIANT *RecordsAffected, _ADORecordset **ppiRs);
2426 HRESULT (STDMETHODCALLTYPE *Supports) (Recordset20 *This, CursorOptionEnum CursorOptions, VARIANT_BOOL *pb);
2427 HRESULT (STDMETHODCALLTYPE *get_Collect) (Recordset20 *This, VARIANT Index, VARIANT *pvar);
2428 HRESULT (STDMETHODCALLTYPE *put_Collect) (Recordset20 *This, VARIANT Index, VARIANT value);
2429 HRESULT (STDMETHODCALLTYPE *get_MarshalOptions) (Recordset20 *This, MarshalOptionsEnum *peMarshal);
2430 HRESULT (STDMETHODCALLTYPE *put_MarshalOptions) (Recordset20 *This, MarshalOptionsEnum eMarshal);
2431 HRESULT (STDMETHODCALLTYPE *Find) (Recordset20 *This, BSTR Criteria, long SkipRecords, SearchDirectionEnum SearchDirection, VARIANT Start);
2432 HRESULT (STDMETHODCALLTYPE *Cancel) (Recordset20 *This);
2433 HRESULT (STDMETHODCALLTYPE *get_DataSource) (Recordset20 *This, IUnknown **ppunkDataSource);
2434 HRESULT (STDMETHODCALLTYPE *putref_DataSource) (Recordset20 *This, IUnknown *punkDataSource);
2435 HRESULT (STDMETHODCALLTYPE *_xSave) (Recordset20 *This, BSTR FileName, PersistFormatEnum PersistFormat);
2436 HRESULT (STDMETHODCALLTYPE *get_ActiveCommand) (Recordset20 *This, IDispatch **ppCmd);
2437 HRESULT (STDMETHODCALLTYPE *put_StayInSync) (Recordset20 *This, VARIANT_BOOL bStayInSync);
2438 HRESULT (STDMETHODCALLTYPE *get_StayInSync) (Recordset20 *This, VARIANT_BOOL *pbStayInSync);
2439 HRESULT (STDMETHODCALLTYPE *GetString) (Recordset20 *This, StringFormatEnum StringFormat, long NumRows, BSTR ColumnDelimeter, BSTR RowDelimeter, BSTR NullExpr, BSTR *pRetString);
2440 HRESULT (STDMETHODCALLTYPE *get_DataMember) (Recordset20 *This, BSTR *pbstrDataMember);
2441 HRESULT (STDMETHODCALLTYPE *put_DataMember) (Recordset20 *This, BSTR bstrDataMember);
2442 HRESULT (STDMETHODCALLTYPE *CompareBookmarks) (Recordset20 *This, VARIANT Bookmark1, VARIANT Bookmark2, CompareEnum *pCompare);
2443 HRESULT (STDMETHODCALLTYPE *Clone) (Recordset20 *This, LockTypeEnum LockType, _ADORecordset **ppvObject);
2444 HRESULT (STDMETHODCALLTYPE *Resync) (Recordset20 *This, AffectEnum AffectRecords, ResyncEnum ResyncValues);
2445 END_INTERFACE
2446 } Recordset20Vtbl;
2447 interface Recordset20 {
2448 CONST_VTBL struct Recordset20Vtbl *lpVtbl;
2449 };
2450#ifdef COBJMACROS
2451#define Recordset20_QueryInterface(This, riid, ppvObject) ((This)->lpVtbl ->QueryInterface (This, riid, ppvObject))
2452#define Recordset20_AddRef(This) ((This)->lpVtbl ->AddRef (This))
2453#define Recordset20_Release(This) ((This)->lpVtbl ->Release (This))
2454#define Recordset20_GetTypeInfoCount(This, pctinfo) ((This)->lpVtbl ->GetTypeInfoCount (This, pctinfo))
2455#define Recordset20_GetTypeInfo(This, iTInfo, lcid, ppTInfo) ((This)->lpVtbl ->GetTypeInfo (This, iTInfo, lcid, ppTInfo))
2456#define Recordset20_GetIDsOfNames(This, riid, rgszNames, cNames, lcid, rgDispId) ((This)->lpVtbl ->GetIDsOfNames (This, riid, rgszNames, cNames, lcid, rgDispId))
2457#define Recordset20_Invoke(This, dispIdMember, riid, lcid, wFlags, pDispParams, pVarResult, pExcepInfo, puArgErr) ((This)->lpVtbl ->Invoke (This, dispIdMember, riid, lcid, wFlags, pDispParams, pVarResult, pExcepInfo, puArgErr))
2458#define Recordset20_get_Properties(This, ppvObject) ((This)->lpVtbl ->get_Properties (This, ppvObject))
2459#define Recordset20_get_AbsolutePosition(This, pl) ((This)->lpVtbl ->get_AbsolutePosition (This, pl))
2460#define Recordset20_put_AbsolutePosition(This, Position) ((This)->lpVtbl ->put_AbsolutePosition (This, Position))
2461#define Recordset20_putref_ActiveConnection(This, pconn) ((This)->lpVtbl ->putref_ActiveConnection (This, pconn))
2462#define Recordset20_put_ActiveConnection(This, vConn) ((This)->lpVtbl ->put_ActiveConnection (This, vConn))
2463#define Recordset20_get_ActiveConnection(This, pvar) ((This)->lpVtbl ->get_ActiveConnection (This, pvar))
2464#define Recordset20_get_BOF(This, pb) ((This)->lpVtbl ->get_BOF (This, pb))
2465#define Recordset20_get_Bookmark(This, pvBookmark) ((This)->lpVtbl ->get_Bookmark (This, pvBookmark))
2466#define Recordset20_put_Bookmark(This, vBookmark) ((This)->lpVtbl ->put_Bookmark (This, vBookmark))
2467#define Recordset20_get_CacheSize(This, pl) ((This)->lpVtbl ->get_CacheSize (This, pl))
2468#define Recordset20_put_CacheSize(This, CacheSize) ((This)->lpVtbl ->put_CacheSize (This, CacheSize))
2469#define Recordset20_get_CursorType(This, plCursorType) ((This)->lpVtbl ->get_CursorType (This, plCursorType))
2470#define Recordset20_put_CursorType(This, lCursorType) ((This)->lpVtbl ->put_CursorType (This, lCursorType))
2471#define Recordset20_get_EOF(This, pb) ((This)->lpVtbl ->get_EOF (This, pb))
2472#define Recordset20_get_Fields(This, ppvObject) ((This)->lpVtbl ->get_Fields (This, ppvObject))
2473#define Recordset20_get_LockType(This, plLockType) ((This)->lpVtbl ->get_LockType (This, plLockType))
2474#define Recordset20_put_LockType(This, lLockType) ((This)->lpVtbl ->put_LockType (This, lLockType))
2475#define Recordset20_get_MaxRecords(This, plMaxRecords) ((This)->lpVtbl ->get_MaxRecords (This, plMaxRecords))
2476#define Recordset20_put_MaxRecords(This, lMaxRecords) ((This)->lpVtbl ->put_MaxRecords (This, lMaxRecords))
2477#define Recordset20_get_RecordCount(This, pl) ((This)->lpVtbl ->get_RecordCount (This, pl))
2478#define Recordset20_putref_Source(This, pcmd) ((This)->lpVtbl ->putref_Source (This, pcmd))
2479#define Recordset20_put_Source(This, bstrConn) ((This)->lpVtbl ->put_Source (This, bstrConn))
2480#define Recordset20_get_Source(This, pvSource) ((This)->lpVtbl ->get_Source (This, pvSource))
2481#define Recordset20_AddNew(This, FieldList, Values) ((This)->lpVtbl ->AddNew (This, FieldList, Values))
2482#define Recordset20_CancelUpdate(This) ((This)->lpVtbl ->CancelUpdate (This))
2483#define Recordset20_Close(This) ((This)->lpVtbl ->Close (This))
2484#define Recordset20_Delete(This, AffectRecords) ((This)->lpVtbl ->Delete (This, AffectRecords))
2485#define Recordset20_GetRows(This, Rows, Start, Fields, pvar) ((This)->lpVtbl ->GetRows (This, Rows, Start, Fields, pvar))
2486#define Recordset20_Move(This, NumRecords, Start) ((This)->lpVtbl ->Move (This, NumRecords, Start))
2487#define Recordset20_MoveNext(This) ((This)->lpVtbl ->MoveNext (This))
2488#define Recordset20_MovePrevious(This) ((This)->lpVtbl ->MovePrevious (This))
2489#define Recordset20_MoveFirst(This) ((This)->lpVtbl ->MoveFirst (This))
2490#define Recordset20_MoveLast(This) ((This)->lpVtbl ->MoveLast (This))
2491#define Recordset20_Open(This, Source, ActiveConnection, CursorType, LockType, Options) ((This)->lpVtbl ->Open (This, Source, ActiveConnection, CursorType, LockType, Options))
2492#define Recordset20_Requery(This, Options) ((This)->lpVtbl ->Requery (This, Options))
2493#define Recordset20__xResync(This, AffectRecords) ((This)->lpVtbl ->_xResync (This, AffectRecords))
2494#define Recordset20_Update(This, Fields, Values) ((This)->lpVtbl ->Update (This, Fields, Values))
2495#define Recordset20_get_AbsolutePage(This, pl) ((This)->lpVtbl ->get_AbsolutePage (This, pl))
2496#define Recordset20_put_AbsolutePage(This, Page) ((This)->lpVtbl ->put_AbsolutePage (This, Page))
2497#define Recordset20_get_EditMode(This, pl) ((This)->lpVtbl ->get_EditMode (This, pl))
2498#define Recordset20_get_Filter(This, Criteria) ((This)->lpVtbl ->get_Filter (This, Criteria))
2499#define Recordset20_put_Filter(This, Criteria) ((This)->lpVtbl ->put_Filter (This, Criteria))
2500#define Recordset20_get_PageCount(This, pl) ((This)->lpVtbl ->get_PageCount (This, pl))
2501#define Recordset20_get_PageSize(This, pl) ((This)->lpVtbl ->get_PageSize (This, pl))
2502#define Recordset20_put_PageSize(This, PageSize) ((This)->lpVtbl ->put_PageSize (This, PageSize))
2503#define Recordset20_get_Sort(This, Criteria) ((This)->lpVtbl ->get_Sort (This, Criteria))
2504#define Recordset20_put_Sort(This, Criteria) ((This)->lpVtbl ->put_Sort (This, Criteria))
2505#define Recordset20_get_Status(This, pl) ((This)->lpVtbl ->get_Status (This, pl))
2506#define Recordset20_get_State(This, plObjState) ((This)->lpVtbl ->get_State (This, plObjState))
2507#define Recordset20__xClone(This, ppvObject) ((This)->lpVtbl ->_xClone (This, ppvObject))
2508#define Recordset20_UpdateBatch(This, AffectRecords) ((This)->lpVtbl ->UpdateBatch (This, AffectRecords))
2509#define Recordset20_CancelBatch(This, AffectRecords) ((This)->lpVtbl ->CancelBatch (This, AffectRecords))
2510#define Recordset20_get_CursorLocation(This, plCursorLoc) ((This)->lpVtbl ->get_CursorLocation (This, plCursorLoc))
2511#define Recordset20_put_CursorLocation(This, lCursorLoc) ((This)->lpVtbl ->put_CursorLocation (This, lCursorLoc))
2512#define Recordset20_NextRecordset(This, RecordsAffected, ppiRs) ((This)->lpVtbl ->NextRecordset (This, RecordsAffected, ppiRs))
2513#define Recordset20_Supports(This, CursorOptions, pb) ((This)->lpVtbl ->Supports (This, CursorOptions, pb))
2514#define Recordset20_get_Collect(This, Index, pvar) ((This)->lpVtbl ->get_Collect (This, Index, pvar))
2515#define Recordset20_put_Collect(This, Index, value) ((This)->lpVtbl ->put_Collect (This, Index, value))
2516#define Recordset20_get_MarshalOptions(This, peMarshal) ((This)->lpVtbl ->get_MarshalOptions (This, peMarshal))
2517#define Recordset20_put_MarshalOptions(This, eMarshal) ((This)->lpVtbl ->put_MarshalOptions (This, eMarshal))
2518#define Recordset20_Find(This, Criteria, SkipRecords, SearchDirection, Start) ((This)->lpVtbl ->Find (This, Criteria, SkipRecords, SearchDirection, Start))
2519#define Recordset20_Cancel(This) ((This)->lpVtbl ->Cancel (This))
2520#define Recordset20_get_DataSource(This, ppunkDataSource) ((This)->lpVtbl ->get_DataSource (This, ppunkDataSource))
2521#define Recordset20_putref_DataSource(This, punkDataSource) ((This)->lpVtbl ->putref_DataSource (This, punkDataSource))
2522#define Recordset20__xSave(This, FileName, PersistFormat) ((This)->lpVtbl ->_xSave (This, FileName, PersistFormat))
2523#define Recordset20_get_ActiveCommand(This, ppCmd) ((This)->lpVtbl ->get_ActiveCommand (This, ppCmd))
2524#define Recordset20_put_StayInSync(This, bStayInSync) ((This)->lpVtbl ->put_StayInSync (This, bStayInSync))
2525#define Recordset20_get_StayInSync(This, pbStayInSync) ((This)->lpVtbl ->get_StayInSync (This, pbStayInSync))
2526#define Recordset20_GetString(This, StringFormat, NumRows, ColumnDelimeter, RowDelimeter, NullExpr, pRetString) ((This)->lpVtbl ->GetString (This, StringFormat, NumRows, ColumnDelimeter, RowDelimeter, NullExpr, pRetString))
2527#define Recordset20_get_DataMember(This, pbstrDataMember) ((This)->lpVtbl ->get_DataMember (This, pbstrDataMember))
2528#define Recordset20_put_DataMember(This, bstrDataMember) ((This)->lpVtbl ->put_DataMember (This, bstrDataMember))
2529#define Recordset20_CompareBookmarks(This, Bookmark1, Bookmark2, pCompare) ((This)->lpVtbl ->CompareBookmarks (This, Bookmark1, Bookmark2, pCompare))
2530#define Recordset20_Clone(This, LockType, ppvObject) ((This)->lpVtbl ->Clone (This, LockType, ppvObject))
2531#define Recordset20_Resync(This, AffectRecords, ResyncValues) ((This)->lpVtbl ->Resync (This, AffectRecords, ResyncValues))
2532#endif
2533#endif
2534#endif
2535#ifndef __Recordset21_INTERFACE_DEFINED__
2536#define __Recordset21_INTERFACE_DEFINED__
2537
2538 EXTERN_C const IID IID_Recordset21;
2539#if defined (__cplusplus) && !defined (CINTERFACE)
2540
2541 MIDL_INTERFACE ("00001555-0000-0010-8000-00AA006D2EA4")
2542 Recordset21 : public Recordset20 {
2543 public:
2544 virtual HRESULT STDMETHODCALLTYPE Seek (VARIANT KeyValues, SeekEnum SeekOption = adSeekFirstEQ) = 0;
2545 virtual HRESULT STDMETHODCALLTYPE put_Index (BSTR Index) = 0;
2546 virtual HRESULT STDMETHODCALLTYPE get_Index (BSTR *pbstrIndex) = 0;
2547 };
2548#else
2549 typedef struct Recordset21Vtbl {
2550 BEGIN_INTERFACE HRESULT (STDMETHODCALLTYPE *QueryInterface) (Recordset21 *This, REFIID riid, _COM_Outptr_ void **ppvObject);
2551 ULONG (STDMETHODCALLTYPE *AddRef) (Recordset21 *This);
2552 ULONG (STDMETHODCALLTYPE *Release) (Recordset21 *This);
2553 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount) (Recordset21 *This, UINT *pctinfo);
2554 HRESULT (STDMETHODCALLTYPE *GetTypeInfo) (Recordset21 *This, UINT iTInfo, LCID lcid, ITypeInfo **ppTInfo);
2555 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames) (Recordset21 *This, REFIID riid, LPOLESTR *rgszNames, UINT cNames, LCID lcid, DISPID *rgDispId);
2556 HRESULT (STDMETHODCALLTYPE *Invoke) (Recordset21 *This, DISPID dispIdMember, REFIID riid, LCID lcid, WORD wFlags, DISPPARAMS *pDispParams, VARIANT *pVarResult, EXCEPINFO *pExcepInfo, UINT *puArgErr);
2557 HRESULT (STDMETHODCALLTYPE *get_Properties) (Recordset21 *This, ADOProperties **ppvObject);
2558 HRESULT (STDMETHODCALLTYPE *get_AbsolutePosition) (Recordset21 *This, PositionEnum *pl);
2559 HRESULT (STDMETHODCALLTYPE *put_AbsolutePosition) (Recordset21 *This, PositionEnum Position);
2560 HRESULT (STDMETHODCALLTYPE *putref_ActiveADOConnection) (Recordset21 *This, IDispatch *pconn);
2561 HRESULT (STDMETHODCALLTYPE *put_ActiveConnection) (Recordset21 *This, VARIANT vConn);
2562 HRESULT (STDMETHODCALLTYPE *get_ActiveConnection) (Recordset21 *This, VARIANT *pvar);
2563 HRESULT (STDMETHODCALLTYPE *get_BOF) (Recordset21 *This, VARIANT_BOOL *pb);
2564 HRESULT (STDMETHODCALLTYPE *get_Bookmark) (Recordset21 *This, VARIANT *pvBookmark);
2565 HRESULT (STDMETHODCALLTYPE *put_Bookmark) (Recordset21 *This, VARIANT vBookmark);
2566 HRESULT (STDMETHODCALLTYPE *get_CacheSize) (Recordset21 *This, long *pl);
2567 HRESULT (STDMETHODCALLTYPE *put_CacheSize) (Recordset21 *This, long CacheSize);
2568 HRESULT (STDMETHODCALLTYPE *get_CursorType) (Recordset21 *This, CursorTypeEnum *plCursorType);
2569 HRESULT (STDMETHODCALLTYPE *put_CursorType) (Recordset21 *This, CursorTypeEnum lCursorType);
2570 HRESULT (STDMETHODCALLTYPE *get_EOF) (Recordset21 *This, VARIANT_BOOL *pb);
2571 HRESULT (STDMETHODCALLTYPE *get_Fields) (Recordset21 *This, ADOFields **ppvObject);
2572 HRESULT (STDMETHODCALLTYPE *get_LockType) (Recordset21 *This, LockTypeEnum *plLockType);
2573 HRESULT (STDMETHODCALLTYPE *put_LockType) (Recordset21 *This, LockTypeEnum lLockType);
2574 HRESULT (STDMETHODCALLTYPE *get_MaxRecords) (Recordset21 *This, long *plMaxRecords);
2575 HRESULT (STDMETHODCALLTYPE *put_MaxRecords) (Recordset21 *This, long lMaxRecords);
2576 HRESULT (STDMETHODCALLTYPE *get_RecordCount) (Recordset21 *This, long *pl);
2577 HRESULT (STDMETHODCALLTYPE *putref_Source) (Recordset21 *This, IDispatch *pcmd);
2578 HRESULT (STDMETHODCALLTYPE *put_Source) (Recordset21 *This, BSTR bstrConn);
2579 HRESULT (STDMETHODCALLTYPE *get_Source) (Recordset21 *This, VARIANT *pvSource);
2580 HRESULT (STDMETHODCALLTYPE *AddNew) (Recordset21 *This, VARIANT FieldList, VARIANT Values);
2581 HRESULT (STDMETHODCALLTYPE *CancelUpdate) (Recordset21 *This);
2582 HRESULT (STDMETHODCALLTYPE *Close) (Recordset21 *This);
2583 HRESULT (STDMETHODCALLTYPE *Delete) (Recordset21 *This, AffectEnum AffectRecords);
2584 HRESULT (STDMETHODCALLTYPE *GetRows) (Recordset21 *This, long Rows, VARIANT Start, VARIANT Fields, VARIANT *pvar);
2585 HRESULT (STDMETHODCALLTYPE *Move) (Recordset21 *This, long NumRecords, VARIANT Start);
2586 HRESULT (STDMETHODCALLTYPE *MoveNext) (Recordset21 *This);
2587 HRESULT (STDMETHODCALLTYPE *MovePrevious) (Recordset21 *This);
2588 HRESULT (STDMETHODCALLTYPE *MoveFirst) (Recordset21 *This);
2589 HRESULT (STDMETHODCALLTYPE *MoveLast) (Recordset21 *This);
2590 HRESULT (STDMETHODCALLTYPE *Open) (Recordset21 *This, VARIANT Source, VARIANT ActiveConnection, CursorTypeEnum CursorType, LockTypeEnum LockType, LONG Options);
2591 HRESULT (STDMETHODCALLTYPE *Requery) (Recordset21 *This, LONG Options);
2592 HRESULT (STDMETHODCALLTYPE *_xResync) (Recordset21 *This, AffectEnum AffectRecords);
2593 HRESULT (STDMETHODCALLTYPE *Update) (Recordset21 *This, VARIANT Fields, VARIANT Values);
2594 HRESULT (STDMETHODCALLTYPE *get_AbsolutePage) (Recordset21 *This, PositionEnum *pl);
2595 HRESULT (STDMETHODCALLTYPE *put_AbsolutePage) (Recordset21 *This, PositionEnum Page);
2596 HRESULT (STDMETHODCALLTYPE *get_EditMode) (Recordset21 *This, EditModeEnum *pl);
2597 HRESULT (STDMETHODCALLTYPE *get_Filter) (Recordset21 *This, VARIANT *Criteria);
2598 HRESULT (STDMETHODCALLTYPE *put_Filter) (Recordset21 *This, VARIANT Criteria);
2599 HRESULT (STDMETHODCALLTYPE *get_PageCount) (Recordset21 *This, long *pl);
2600 HRESULT (STDMETHODCALLTYPE *get_PageSize) (Recordset21 *This, long *pl);
2601 HRESULT (STDMETHODCALLTYPE *put_PageSize) (Recordset21 *This, long PageSize);
2602 HRESULT (STDMETHODCALLTYPE *get_Sort) (Recordset21 *This, BSTR *Criteria);
2603 HRESULT (STDMETHODCALLTYPE *put_Sort) (Recordset21 *This, BSTR Criteria);
2604 HRESULT (STDMETHODCALLTYPE *get_Status) (Recordset21 *This, long *pl);
2605 HRESULT (STDMETHODCALLTYPE *get_State) (Recordset21 *This, LONG *plObjState);
2606 HRESULT (STDMETHODCALLTYPE *_xClone) (Recordset21 *This, _ADORecordset **ppvObject);
2607 HRESULT (STDMETHODCALLTYPE *UpdateBatch) (Recordset21 *This, AffectEnum AffectRecords);
2608 HRESULT (STDMETHODCALLTYPE *CancelBatch) (Recordset21 *This, AffectEnum AffectRecords);
2609 HRESULT (STDMETHODCALLTYPE *get_CursorLocation) (Recordset21 *This, CursorLocationEnum *plCursorLoc);
2610 HRESULT (STDMETHODCALLTYPE *put_CursorLocation) (Recordset21 *This, CursorLocationEnum lCursorLoc);
2611 HRESULT (STDMETHODCALLTYPE *NextADORecordset) (Recordset21 *This, VARIANT *RecordsAffected, _ADORecordset **ppiRs);
2612 HRESULT (STDMETHODCALLTYPE *Supports) (Recordset21 *This, CursorOptionEnum CursorOptions, VARIANT_BOOL *pb);
2613 HRESULT (STDMETHODCALLTYPE *get_Collect) (Recordset21 *This, VARIANT Index, VARIANT *pvar);
2614 HRESULT (STDMETHODCALLTYPE *put_Collect) (Recordset21 *This, VARIANT Index, VARIANT value);
2615 HRESULT (STDMETHODCALLTYPE *get_MarshalOptions) (Recordset21 *This, MarshalOptionsEnum *peMarshal);
2616 HRESULT (STDMETHODCALLTYPE *put_MarshalOptions) (Recordset21 *This, MarshalOptionsEnum eMarshal);
2617 HRESULT (STDMETHODCALLTYPE *Find) (Recordset21 *This, BSTR Criteria, long SkipRecords, SearchDirectionEnum SearchDirection, VARIANT Start);
2618 HRESULT (STDMETHODCALLTYPE *Cancel) (Recordset21 *This);
2619 HRESULT (STDMETHODCALLTYPE *get_DataSource) (Recordset21 *This, IUnknown **ppunkDataSource);
2620 HRESULT (STDMETHODCALLTYPE *putref_DataSource) (Recordset21 *This, IUnknown *punkDataSource);
2621 HRESULT (STDMETHODCALLTYPE *_xSave) (Recordset21 *This, BSTR FileName, PersistFormatEnum PersistFormat);
2622 HRESULT (STDMETHODCALLTYPE *get_ActiveCommand) (Recordset21 *This, IDispatch **ppCmd);
2623 HRESULT (STDMETHODCALLTYPE *put_StayInSync) (Recordset21 *This, VARIANT_BOOL bStayInSync);
2624 HRESULT (STDMETHODCALLTYPE *get_StayInSync) (Recordset21 *This, VARIANT_BOOL *pbStayInSync);
2625 HRESULT (STDMETHODCALLTYPE *GetString) (Recordset21 *This, StringFormatEnum StringFormat, long NumRows, BSTR ColumnDelimeter, BSTR RowDelimeter, BSTR NullExpr, BSTR *pRetString);
2626 HRESULT (STDMETHODCALLTYPE *get_DataMember) (Recordset21 *This, BSTR *pbstrDataMember);
2627 HRESULT (STDMETHODCALLTYPE *put_DataMember) (Recordset21 *This, BSTR bstrDataMember);
2628 HRESULT (STDMETHODCALLTYPE *CompareBookmarks) (Recordset21 *This, VARIANT Bookmark1, VARIANT Bookmark2, CompareEnum *pCompare);
2629 HRESULT (STDMETHODCALLTYPE *Clone) (Recordset21 *This, LockTypeEnum LockType, _ADORecordset **ppvObject);
2630 HRESULT (STDMETHODCALLTYPE *Resync) (Recordset21 *This, AffectEnum AffectRecords, ResyncEnum ResyncValues);
2631 HRESULT (STDMETHODCALLTYPE *Seek) (Recordset21 *This, VARIANT KeyValues, SeekEnum SeekOption);
2632 HRESULT (STDMETHODCALLTYPE *put_Index) (Recordset21 *This, BSTR Index);
2633 HRESULT (STDMETHODCALLTYPE *get_Index) (Recordset21 *This, BSTR *pbstrIndex);
2634 END_INTERFACE
2635 } Recordset21Vtbl;
2636 interface Recordset21 {
2637 CONST_VTBL struct Recordset21Vtbl *lpVtbl;
2638 };
2639#ifdef COBJMACROS
2640#define Recordset21_QueryInterface(This, riid, ppvObject) ((This)->lpVtbl ->QueryInterface (This, riid, ppvObject))
2641#define Recordset21_AddRef(This) ((This)->lpVtbl ->AddRef (This))
2642#define Recordset21_Release(This) ((This)->lpVtbl ->Release (This))
2643#define Recordset21_GetTypeInfoCount(This, pctinfo) ((This)->lpVtbl ->GetTypeInfoCount (This, pctinfo))
2644#define Recordset21_GetTypeInfo(This, iTInfo, lcid, ppTInfo) ((This)->lpVtbl ->GetTypeInfo (This, iTInfo, lcid, ppTInfo))
2645#define Recordset21_GetIDsOfNames(This, riid, rgszNames, cNames, lcid, rgDispId) ((This)->lpVtbl ->GetIDsOfNames (This, riid, rgszNames, cNames, lcid, rgDispId))
2646#define Recordset21_Invoke(This, dispIdMember, riid, lcid, wFlags, pDispParams, pVarResult, pExcepInfo, puArgErr) ((This)->lpVtbl ->Invoke (This, dispIdMember, riid, lcid, wFlags, pDispParams, pVarResult, pExcepInfo, puArgErr))
2647#define Recordset21_get_Properties(This, ppvObject) ((This)->lpVtbl ->get_Properties (This, ppvObject))
2648#define Recordset21_get_AbsolutePosition(This, pl) ((This)->lpVtbl ->get_AbsolutePosition (This, pl))
2649#define Recordset21_put_AbsolutePosition(This, Position) ((This)->lpVtbl ->put_AbsolutePosition (This, Position))
2650#define Recordset21_putref_ActiveConnection(This, pconn) ((This)->lpVtbl ->putref_ActiveConnection (This, pconn))
2651#define Recordset21_put_ActiveConnection(This, vConn) ((This)->lpVtbl ->put_ActiveConnection (This, vConn))
2652#define Recordset21_get_ActiveConnection(This, pvar) ((This)->lpVtbl ->get_ActiveConnection (This, pvar))
2653#define Recordset21_get_BOF(This, pb) ((This)->lpVtbl ->get_BOF (This, pb))
2654#define Recordset21_get_Bookmark(This, pvBookmark) ((This)->lpVtbl ->get_Bookmark (This, pvBookmark))
2655#define Recordset21_put_Bookmark(This, vBookmark) ((This)->lpVtbl ->put_Bookmark (This, vBookmark))
2656#define Recordset21_get_CacheSize(This, pl) ((This)->lpVtbl ->get_CacheSize (This, pl))
2657#define Recordset21_put_CacheSize(This, CacheSize) ((This)->lpVtbl ->put_CacheSize (This, CacheSize))
2658#define Recordset21_get_CursorType(This, plCursorType) ((This)->lpVtbl ->get_CursorType (This, plCursorType))
2659#define Recordset21_put_CursorType(This, lCursorType) ((This)->lpVtbl ->put_CursorType (This, lCursorType))
2660#define Recordset21_get_EOF(This, pb) ((This)->lpVtbl ->get_EOF (This, pb))
2661#define Recordset21_get_Fields(This, ppvObject) ((This)->lpVtbl ->get_Fields (This, ppvObject))
2662#define Recordset21_get_LockType(This, plLockType) ((This)->lpVtbl ->get_LockType (This, plLockType))
2663#define Recordset21_put_LockType(This, lLockType) ((This)->lpVtbl ->put_LockType (This, lLockType))
2664#define Recordset21_get_MaxRecords(This, plMaxRecords) ((This)->lpVtbl ->get_MaxRecords (This, plMaxRecords))
2665#define Recordset21_put_MaxRecords(This, lMaxRecords) ((This)->lpVtbl ->put_MaxRecords (This, lMaxRecords))
2666#define Recordset21_get_RecordCount(This, pl) ((This)->lpVtbl ->get_RecordCount (This, pl))
2667#define Recordset21_putref_Source(This, pcmd) ((This)->lpVtbl ->putref_Source (This, pcmd))
2668#define Recordset21_put_Source(This, bstrConn) ((This)->lpVtbl ->put_Source (This, bstrConn))
2669#define Recordset21_get_Source(This, pvSource) ((This)->lpVtbl ->get_Source (This, pvSource))
2670#define Recordset21_AddNew(This, FieldList, Values) ((This)->lpVtbl ->AddNew (This, FieldList, Values))
2671#define Recordset21_CancelUpdate(This) ((This)->lpVtbl ->CancelUpdate (This))
2672#define Recordset21_Close(This) ((This)->lpVtbl ->Close (This))
2673#define Recordset21_Delete(This, AffectRecords) ((This)->lpVtbl ->Delete (This, AffectRecords))
2674#define Recordset21_GetRows(This, Rows, Start, Fields, pvar) ((This)->lpVtbl ->GetRows (This, Rows, Start, Fields, pvar))
2675#define Recordset21_Move(This, NumRecords, Start) ((This)->lpVtbl ->Move (This, NumRecords, Start))
2676#define Recordset21_MoveNext(This) ((This)->lpVtbl ->MoveNext (This))
2677#define Recordset21_MovePrevious(This) ((This)->lpVtbl ->MovePrevious (This))
2678#define Recordset21_MoveFirst(This) ((This)->lpVtbl ->MoveFirst (This))
2679#define Recordset21_MoveLast(This) ((This)->lpVtbl ->MoveLast (This))
2680#define Recordset21_Open(This, Source, ActiveConnection, CursorType, LockType, Options) ((This)->lpVtbl ->Open (This, Source, ActiveConnection, CursorType, LockType, Options))
2681#define Recordset21_Requery(This, Options) ((This)->lpVtbl ->Requery (This, Options))
2682#define Recordset21__xResync(This, AffectRecords) ((This)->lpVtbl ->_xResync (This, AffectRecords))
2683#define Recordset21_Update(This, Fields, Values) ((This)->lpVtbl ->Update (This, Fields, Values))
2684#define Recordset21_get_AbsolutePage(This, pl) ((This)->lpVtbl ->get_AbsolutePage (This, pl))
2685#define Recordset21_put_AbsolutePage(This, Page) ((This)->lpVtbl ->put_AbsolutePage (This, Page))
2686#define Recordset21_get_EditMode(This, pl) ((This)->lpVtbl ->get_EditMode (This, pl))
2687#define Recordset21_get_Filter(This, Criteria) ((This)->lpVtbl ->get_Filter (This, Criteria))
2688#define Recordset21_put_Filter(This, Criteria) ((This)->lpVtbl ->put_Filter (This, Criteria))
2689#define Recordset21_get_PageCount(This, pl) ((This)->lpVtbl ->get_PageCount (This, pl))
2690#define Recordset21_get_PageSize(This, pl) ((This)->lpVtbl ->get_PageSize (This, pl))
2691#define Recordset21_put_PageSize(This, PageSize) ((This)->lpVtbl ->put_PageSize (This, PageSize))
2692#define Recordset21_get_Sort(This, Criteria) ((This)->lpVtbl ->get_Sort (This, Criteria))
2693#define Recordset21_put_Sort(This, Criteria) ((This)->lpVtbl ->put_Sort (This, Criteria))
2694#define Recordset21_get_Status(This, pl) ((This)->lpVtbl ->get_Status (This, pl))
2695#define Recordset21_get_State(This, plObjState) ((This)->lpVtbl ->get_State (This, plObjState))
2696#define Recordset21__xClone(This, ppvObject) ((This)->lpVtbl ->_xClone (This, ppvObject))
2697#define Recordset21_UpdateBatch(This, AffectRecords) ((This)->lpVtbl ->UpdateBatch (This, AffectRecords))
2698#define Recordset21_CancelBatch(This, AffectRecords) ((This)->lpVtbl ->CancelBatch (This, AffectRecords))
2699#define Recordset21_get_CursorLocation(This, plCursorLoc) ((This)->lpVtbl ->get_CursorLocation (This, plCursorLoc))
2700#define Recordset21_put_CursorLocation(This, lCursorLoc) ((This)->lpVtbl ->put_CursorLocation (This, lCursorLoc))
2701#define Recordset21_NextRecordset(This, RecordsAffected, ppiRs) ((This)->lpVtbl ->NextRecordset (This, RecordsAffected, ppiRs))
2702#define Recordset21_Supports(This, CursorOptions, pb) ((This)->lpVtbl ->Supports (This, CursorOptions, pb))
2703#define Recordset21_get_Collect(This, Index, pvar) ((This)->lpVtbl ->get_Collect (This, Index, pvar))
2704#define Recordset21_put_Collect(This, Index, value) ((This)->lpVtbl ->put_Collect (This, Index, value))
2705#define Recordset21_get_MarshalOptions(This, peMarshal) ((This)->lpVtbl ->get_MarshalOptions (This, peMarshal))
2706#define Recordset21_put_MarshalOptions(This, eMarshal) ((This)->lpVtbl ->put_MarshalOptions (This, eMarshal))
2707#define Recordset21_Find(This, Criteria, SkipRecords, SearchDirection, Start) ((This)->lpVtbl ->Find (This, Criteria, SkipRecords, SearchDirection, Start))
2708#define Recordset21_Cancel(This) ((This)->lpVtbl ->Cancel (This))
2709#define Recordset21_get_DataSource(This, ppunkDataSource) ((This)->lpVtbl ->get_DataSource (This, ppunkDataSource))
2710#define Recordset21_putref_DataSource(This, punkDataSource) ((This)->lpVtbl ->putref_DataSource (This, punkDataSource))
2711#define Recordset21__xSave(This, FileName, PersistFormat) ((This)->lpVtbl ->_xSave (This, FileName, PersistFormat))
2712#define Recordset21_get_ActiveCommand(This, ppCmd) ((This)->lpVtbl ->get_ActiveCommand (This, ppCmd))
2713#define Recordset21_put_StayInSync(This, bStayInSync) ((This)->lpVtbl ->put_StayInSync (This, bStayInSync))
2714#define Recordset21_get_StayInSync(This, pbStayInSync) ((This)->lpVtbl ->get_StayInSync (This, pbStayInSync))
2715#define Recordset21_GetString(This, StringFormat, NumRows, ColumnDelimeter, RowDelimeter, NullExpr, pRetString) ((This)->lpVtbl ->GetString (This, StringFormat, NumRows, ColumnDelimeter, RowDelimeter, NullExpr, pRetString))
2716#define Recordset21_get_DataMember(This, pbstrDataMember) ((This)->lpVtbl ->get_DataMember (This, pbstrDataMember))
2717#define Recordset21_put_DataMember(This, bstrDataMember) ((This)->lpVtbl ->put_DataMember (This, bstrDataMember))
2718#define Recordset21_CompareBookmarks(This, Bookmark1, Bookmark2, pCompare) ((This)->lpVtbl ->CompareBookmarks (This, Bookmark1, Bookmark2, pCompare))
2719#define Recordset21_Clone(This, LockType, ppvObject) ((This)->lpVtbl ->Clone (This, LockType, ppvObject))
2720#define Recordset21_Resync(This, AffectRecords, ResyncValues) ((This)->lpVtbl ->Resync (This, AffectRecords, ResyncValues))
2721#define Recordset21_Seek(This, KeyValues, SeekOption) ((This)->lpVtbl ->Seek (This, KeyValues, SeekOption))
2722#define Recordset21_put_Index(This, Index) ((This)->lpVtbl ->put_Index (This, Index))
2723#define Recordset21_get_Index(This, pbstrIndex) ((This)->lpVtbl ->get_Index (This, pbstrIndex))
2724#endif
2725#endif
2726#endif
2727#ifndef ___Recordset_INTERFACE_DEFINED__
2728#define ___Recordset_INTERFACE_DEFINED__
2729
2730 EXTERN_C const IID IID__Recordset;
2731#if defined (__cplusplus) && !defined (CINTERFACE)
2732
2733 MIDL_INTERFACE ("00001556-0000-0010-8000-00AA006D2EA4")
2734 _ADORecordset : public Recordset21 {
2735 public:
2736 virtual HRESULT STDMETHODCALLTYPE Save (VARIANT Destination, PersistFormatEnum PersistFormat = adPersistADTG) = 0;
2737 };
2738#else
2739 typedef struct _RecordsetVtbl {
2740 BEGIN_INTERFACE HRESULT (STDMETHODCALLTYPE *QueryInterface) (_ADORecordset *This, REFIID riid, _COM_Outptr_ void **ppvObject);
2741 ULONG (STDMETHODCALLTYPE *AddRef) (_ADORecordset *This);
2742 ULONG (STDMETHODCALLTYPE *Release) (_ADORecordset *This);
2743 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount) (_ADORecordset *This, UINT *pctinfo);
2744 HRESULT (STDMETHODCALLTYPE *GetTypeInfo) (_ADORecordset *This, UINT iTInfo, LCID lcid, ITypeInfo **ppTInfo);
2745 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames) (_ADORecordset *This, REFIID riid, LPOLESTR *rgszNames, UINT cNames, LCID lcid, DISPID *rgDispId);
2746 HRESULT (STDMETHODCALLTYPE *Invoke) (_ADORecordset *This, DISPID dispIdMember, REFIID riid, LCID lcid, WORD wFlags, DISPPARAMS *pDispParams, VARIANT *pVarResult, EXCEPINFO *pExcepInfo, UINT *puArgErr);
2747 HRESULT (STDMETHODCALLTYPE *get_Properties) (_ADORecordset *This, ADOProperties **ppvObject);
2748 HRESULT (STDMETHODCALLTYPE *get_AbsolutePosition) (_ADORecordset *This, PositionEnum *pl);
2749 HRESULT (STDMETHODCALLTYPE *put_AbsolutePosition) (_ADORecordset *This, PositionEnum Position);
2750 HRESULT (STDMETHODCALLTYPE *putref_ActiveADOConnection) (_ADORecordset *This, IDispatch *pconn);
2751 HRESULT (STDMETHODCALLTYPE *put_ActiveConnection) (_ADORecordset *This, VARIANT vConn);
2752 HRESULT (STDMETHODCALLTYPE *get_ActiveConnection) (_ADORecordset *This, VARIANT *pvar);
2753 HRESULT (STDMETHODCALLTYPE *get_BOF) (_ADORecordset *This, VARIANT_BOOL *pb);
2754 HRESULT (STDMETHODCALLTYPE *get_Bookmark) (_ADORecordset *This, VARIANT *pvBookmark);
2755 HRESULT (STDMETHODCALLTYPE *put_Bookmark) (_ADORecordset *This, VARIANT vBookmark);
2756 HRESULT (STDMETHODCALLTYPE *get_CacheSize) (_ADORecordset *This, long *pl);
2757 HRESULT (STDMETHODCALLTYPE *put_CacheSize) (_ADORecordset *This, long CacheSize);
2758 HRESULT (STDMETHODCALLTYPE *get_CursorType) (_ADORecordset *This, CursorTypeEnum *plCursorType);
2759 HRESULT (STDMETHODCALLTYPE *put_CursorType) (_ADORecordset *This, CursorTypeEnum lCursorType);
2760 HRESULT (STDMETHODCALLTYPE *get_EOF) (_ADORecordset *This, VARIANT_BOOL *pb);
2761 HRESULT (STDMETHODCALLTYPE *get_Fields) (_ADORecordset *This, ADOFields **ppvObject);
2762 HRESULT (STDMETHODCALLTYPE *get_LockType) (_ADORecordset *This, LockTypeEnum *plLockType);
2763 HRESULT (STDMETHODCALLTYPE *put_LockType) (_ADORecordset *This, LockTypeEnum lLockType);
2764 HRESULT (STDMETHODCALLTYPE *get_MaxRecords) (_ADORecordset *This, long *plMaxRecords);
2765 HRESULT (STDMETHODCALLTYPE *put_MaxRecords) (_ADORecordset *This, long lMaxRecords);
2766 HRESULT (STDMETHODCALLTYPE *get_RecordCount) (_ADORecordset *This, long *pl);
2767 HRESULT (STDMETHODCALLTYPE *putref_Source) (_ADORecordset *This, IDispatch *pcmd);
2768 HRESULT (STDMETHODCALLTYPE *put_Source) (_ADORecordset *This, BSTR bstrConn);
2769 HRESULT (STDMETHODCALLTYPE *get_Source) (_ADORecordset *This, VARIANT *pvSource);
2770 HRESULT (STDMETHODCALLTYPE *AddNew) (_ADORecordset *This, VARIANT FieldList, VARIANT Values);
2771 HRESULT (STDMETHODCALLTYPE *CancelUpdate) (_ADORecordset *This);
2772 HRESULT (STDMETHODCALLTYPE *Close) (_ADORecordset *This);
2773 HRESULT (STDMETHODCALLTYPE *Delete) (_ADORecordset *This, AffectEnum AffectRecords);
2774 HRESULT (STDMETHODCALLTYPE *GetRows) (_ADORecordset *This, long Rows, VARIANT Start, VARIANT Fields, VARIANT *pvar);
2775 HRESULT (STDMETHODCALLTYPE *Move) (_ADORecordset *This, long NumRecords, VARIANT Start);
2776 HRESULT (STDMETHODCALLTYPE *MoveNext) (_ADORecordset *This);
2777 HRESULT (STDMETHODCALLTYPE *MovePrevious) (_ADORecordset *This);
2778 HRESULT (STDMETHODCALLTYPE *MoveFirst) (_ADORecordset *This);
2779 HRESULT (STDMETHODCALLTYPE *MoveLast) (_ADORecordset *This);
2780 HRESULT (STDMETHODCALLTYPE *Open) (_ADORecordset *This, VARIANT Source, VARIANT ActiveConnection, CursorTypeEnum CursorType, LockTypeEnum LockType, LONG Options);
2781 HRESULT (STDMETHODCALLTYPE *Requery) (_ADORecordset *This, LONG Options);
2782 HRESULT (STDMETHODCALLTYPE *_xResync) (_ADORecordset *This, AffectEnum AffectRecords);
2783 HRESULT (STDMETHODCALLTYPE *Update) (_ADORecordset *This, VARIANT Fields, VARIANT Values);
2784 HRESULT (STDMETHODCALLTYPE *get_AbsolutePage) (_ADORecordset *This, PositionEnum *pl);
2785 HRESULT (STDMETHODCALLTYPE *put_AbsolutePage) (_ADORecordset *This, PositionEnum Page);
2786 HRESULT (STDMETHODCALLTYPE *get_EditMode) (_ADORecordset *This, EditModeEnum *pl);
2787 HRESULT (STDMETHODCALLTYPE *get_Filter) (_ADORecordset *This, VARIANT *Criteria);
2788 HRESULT (STDMETHODCALLTYPE *put_Filter) (_ADORecordset *This, VARIANT Criteria);
2789 HRESULT (STDMETHODCALLTYPE *get_PageCount) (_ADORecordset *This, long *pl);
2790 HRESULT (STDMETHODCALLTYPE *get_PageSize) (_ADORecordset *This, long *pl);
2791 HRESULT (STDMETHODCALLTYPE *put_PageSize) (_ADORecordset *This, long PageSize);
2792 HRESULT (STDMETHODCALLTYPE *get_Sort) (_ADORecordset *This, BSTR *Criteria);
2793 HRESULT (STDMETHODCALLTYPE *put_Sort) (_ADORecordset *This, BSTR Criteria);
2794 HRESULT (STDMETHODCALLTYPE *get_Status) (_ADORecordset *This, long *pl);
2795 HRESULT (STDMETHODCALLTYPE *get_State) (_ADORecordset *This, LONG *plObjState);
2796 HRESULT (STDMETHODCALLTYPE *_xClone) (_ADORecordset *This, _ADORecordset **ppvObject);
2797 HRESULT (STDMETHODCALLTYPE *UpdateBatch) (_ADORecordset *This, AffectEnum AffectRecords);
2798 HRESULT (STDMETHODCALLTYPE *CancelBatch) (_ADORecordset *This, AffectEnum AffectRecords);
2799 HRESULT (STDMETHODCALLTYPE *get_CursorLocation) (_ADORecordset *This, CursorLocationEnum *plCursorLoc);
2800 HRESULT (STDMETHODCALLTYPE *put_CursorLocation) (_ADORecordset *This, CursorLocationEnum lCursorLoc);
2801 HRESULT (STDMETHODCALLTYPE *NextADORecordset) (_ADORecordset *This, VARIANT *RecordsAffected, _ADORecordset **ppiRs);
2802 HRESULT (STDMETHODCALLTYPE *Supports) (_ADORecordset *This, CursorOptionEnum CursorOptions, VARIANT_BOOL *pb);
2803 HRESULT (STDMETHODCALLTYPE *get_Collect) (_ADORecordset *This, VARIANT Index, VARIANT *pvar);
2804 HRESULT (STDMETHODCALLTYPE *put_Collect) (_ADORecordset *This, VARIANT Index, VARIANT value);
2805 HRESULT (STDMETHODCALLTYPE *get_MarshalOptions) (_ADORecordset *This, MarshalOptionsEnum *peMarshal);
2806 HRESULT (STDMETHODCALLTYPE *put_MarshalOptions) (_ADORecordset *This, MarshalOptionsEnum eMarshal);
2807 HRESULT (STDMETHODCALLTYPE *Find) (_ADORecordset *This, BSTR Criteria, long SkipRecords, SearchDirectionEnum SearchDirection, VARIANT Start);
2808 HRESULT (STDMETHODCALLTYPE *Cancel) (_ADORecordset *This);
2809 HRESULT (STDMETHODCALLTYPE *get_DataSource) (_ADORecordset *This, IUnknown **ppunkDataSource);
2810 HRESULT (STDMETHODCALLTYPE *putref_DataSource) (_ADORecordset *This, IUnknown *punkDataSource);
2811 HRESULT (STDMETHODCALLTYPE *_xSave) (_ADORecordset *This, BSTR FileName, PersistFormatEnum PersistFormat);
2812 HRESULT (STDMETHODCALLTYPE *get_ActiveCommand) (_ADORecordset *This, IDispatch **ppCmd);
2813 HRESULT (STDMETHODCALLTYPE *put_StayInSync) (_ADORecordset *This, VARIANT_BOOL bStayInSync);
2814 HRESULT (STDMETHODCALLTYPE *get_StayInSync) (_ADORecordset *This, VARIANT_BOOL *pbStayInSync);
2815 HRESULT (STDMETHODCALLTYPE *GetString) (_ADORecordset *This, StringFormatEnum StringFormat, long NumRows, BSTR ColumnDelimeter, BSTR RowDelimeter, BSTR NullExpr, BSTR *pRetString);
2816 HRESULT (STDMETHODCALLTYPE *get_DataMember) (_ADORecordset *This, BSTR *pbstrDataMember);
2817 HRESULT (STDMETHODCALLTYPE *put_DataMember) (_ADORecordset *This, BSTR bstrDataMember);
2818 HRESULT (STDMETHODCALLTYPE *CompareBookmarks) (_ADORecordset *This, VARIANT Bookmark1, VARIANT Bookmark2, CompareEnum *pCompare);
2819 HRESULT (STDMETHODCALLTYPE *Clone) (_ADORecordset *This, LockTypeEnum LockType, _ADORecordset **ppvObject);
2820 HRESULT (STDMETHODCALLTYPE *Resync) (_ADORecordset *This, AffectEnum AffectRecords, ResyncEnum ResyncValues);
2821 HRESULT (STDMETHODCALLTYPE *Seek) (_ADORecordset *This, VARIANT KeyValues, SeekEnum SeekOption);
2822 HRESULT (STDMETHODCALLTYPE *put_Index) (_ADORecordset *This, BSTR Index);
2823 HRESULT (STDMETHODCALLTYPE *get_Index) (_ADORecordset *This, BSTR *pbstrIndex);
2824 HRESULT (STDMETHODCALLTYPE *Save) (_ADORecordset *This, VARIANT Destination, PersistFormatEnum PersistFormat);
2825 END_INTERFACE
2826 } _RecordsetVtbl;
2827 interface _Recordset {
2828 CONST_VTBL struct _RecordsetVtbl *lpVtbl;
2829 };
2830#ifdef COBJMACROS
2831#define _Recordset_QueryInterface(This, riid, ppvObject) ((This)->lpVtbl ->QueryInterface (This, riid, ppvObject))
2832#define _Recordset_AddRef(This) ((This)->lpVtbl ->AddRef (This))
2833#define _Recordset_Release(This) ((This)->lpVtbl ->Release (This))
2834#define _Recordset_GetTypeInfoCount(This, pctinfo) ((This)->lpVtbl ->GetTypeInfoCount (This, pctinfo))
2835#define _Recordset_GetTypeInfo(This, iTInfo, lcid, ppTInfo) ((This)->lpVtbl ->GetTypeInfo (This, iTInfo, lcid, ppTInfo))
2836#define _Recordset_GetIDsOfNames(This, riid, rgszNames, cNames, lcid, rgDispId) ((This)->lpVtbl ->GetIDsOfNames (This, riid, rgszNames, cNames, lcid, rgDispId))
2837#define _Recordset_Invoke(This, dispIdMember, riid, lcid, wFlags, pDispParams, pVarResult, pExcepInfo, puArgErr) ((This)->lpVtbl ->Invoke (This, dispIdMember, riid, lcid, wFlags, pDispParams, pVarResult, pExcepInfo, puArgErr))
2838#define _Recordset_get_Properties(This, ppvObject) ((This)->lpVtbl ->get_Properties (This, ppvObject))
2839#define _Recordset_get_AbsolutePosition(This, pl) ((This)->lpVtbl ->get_AbsolutePosition (This, pl))
2840#define _Recordset_put_AbsolutePosition(This, Position) ((This)->lpVtbl ->put_AbsolutePosition (This, Position))
2841#define _Recordset_putref_ActiveConnection(This, pconn) ((This)->lpVtbl ->putref_ActiveConnection (This, pconn))
2842#define _Recordset_put_ActiveConnection(This, vConn) ((This)->lpVtbl ->put_ActiveConnection (This, vConn))
2843#define _Recordset_get_ActiveConnection(This, pvar) ((This)->lpVtbl ->get_ActiveConnection (This, pvar))
2844#define _Recordset_get_BOF(This, pb) ((This)->lpVtbl ->get_BOF (This, pb))
2845#define _Recordset_get_Bookmark(This, pvBookmark) ((This)->lpVtbl ->get_Bookmark (This, pvBookmark))
2846#define _Recordset_put_Bookmark(This, vBookmark) ((This)->lpVtbl ->put_Bookmark (This, vBookmark))
2847#define _Recordset_get_CacheSize(This, pl) ((This)->lpVtbl ->get_CacheSize (This, pl))
2848#define _Recordset_put_CacheSize(This, CacheSize) ((This)->lpVtbl ->put_CacheSize (This, CacheSize))
2849#define _Recordset_get_CursorType(This, plCursorType) ((This)->lpVtbl ->get_CursorType (This, plCursorType))
2850#define _Recordset_put_CursorType(This, lCursorType) ((This)->lpVtbl ->put_CursorType (This, lCursorType))
2851#define _Recordset_get_EOF(This, pb) ((This)->lpVtbl ->get_EOF (This, pb))
2852#define _Recordset_get_Fields(This, ppvObject) ((This)->lpVtbl ->get_Fields (This, ppvObject))
2853#define _Recordset_get_LockType(This, plLockType) ((This)->lpVtbl ->get_LockType (This, plLockType))
2854#define _Recordset_put_LockType(This, lLockType) ((This)->lpVtbl ->put_LockType (This, lLockType))
2855#define _Recordset_get_MaxRecords(This, plMaxRecords) ((This)->lpVtbl ->get_MaxRecords (This, plMaxRecords))
2856#define _Recordset_put_MaxRecords(This, lMaxRecords) ((This)->lpVtbl ->put_MaxRecords (This, lMaxRecords))
2857#define _Recordset_get_RecordCount(This, pl) ((This)->lpVtbl ->get_RecordCount (This, pl))
2858#define _Recordset_putref_Source(This, pcmd) ((This)->lpVtbl ->putref_Source (This, pcmd))
2859#define _Recordset_put_Source(This, bstrConn) ((This)->lpVtbl ->put_Source (This, bstrConn))
2860#define _Recordset_get_Source(This, pvSource) ((This)->lpVtbl ->get_Source (This, pvSource))
2861#define _Recordset_AddNew(This, FieldList, Values) ((This)->lpVtbl ->AddNew (This, FieldList, Values))
2862#define _Recordset_CancelUpdate(This) ((This)->lpVtbl ->CancelUpdate (This))
2863#define _Recordset_Close(This) ((This)->lpVtbl ->Close (This))
2864#define _Recordset_Delete(This, AffectRecords) ((This)->lpVtbl ->Delete (This, AffectRecords))
2865#define _Recordset_GetRows(This, Rows, Start, Fields, pvar) ((This)->lpVtbl ->GetRows (This, Rows, Start, Fields, pvar))
2866#define _Recordset_Move(This, NumRecords, Start) ((This)->lpVtbl ->Move (This, NumRecords, Start))
2867#define _Recordset_MoveNext(This) ((This)->lpVtbl ->MoveNext (This))
2868#define _Recordset_MovePrevious(This) ((This)->lpVtbl ->MovePrevious (This))
2869#define _Recordset_MoveFirst(This) ((This)->lpVtbl ->MoveFirst (This))
2870#define _Recordset_MoveLast(This) ((This)->lpVtbl ->MoveLast (This))
2871#define _Recordset_Open(This, Source, ActiveConnection, CursorType, LockType, Options) ((This)->lpVtbl ->Open (This, Source, ActiveConnection, CursorType, LockType, Options))
2872#define _Recordset_Requery(This, Options) ((This)->lpVtbl ->Requery (This, Options))
2873#define _Recordset__xResync(This, AffectRecords) ((This)->lpVtbl ->_xResync (This, AffectRecords))
2874#define _Recordset_Update(This, Fields, Values) ((This)->lpVtbl ->Update (This, Fields, Values))
2875#define _Recordset_get_AbsolutePage(This, pl) ((This)->lpVtbl ->get_AbsolutePage (This, pl))
2876#define _Recordset_put_AbsolutePage(This, Page) ((This)->lpVtbl ->put_AbsolutePage (This, Page))
2877#define _Recordset_get_EditMode(This, pl) ((This)->lpVtbl ->get_EditMode (This, pl))
2878#define _Recordset_get_Filter(This, Criteria) ((This)->lpVtbl ->get_Filter (This, Criteria))
2879#define _Recordset_put_Filter(This, Criteria) ((This)->lpVtbl ->put_Filter (This, Criteria))
2880#define _Recordset_get_PageCount(This, pl) ((This)->lpVtbl ->get_PageCount (This, pl))
2881#define _Recordset_get_PageSize(This, pl) ((This)->lpVtbl ->get_PageSize (This, pl))
2882#define _Recordset_put_PageSize(This, PageSize) ((This)->lpVtbl ->put_PageSize (This, PageSize))
2883#define _Recordset_get_Sort(This, Criteria) ((This)->lpVtbl ->get_Sort (This, Criteria))
2884#define _Recordset_put_Sort(This, Criteria) ((This)->lpVtbl ->put_Sort (This, Criteria))
2885#define _Recordset_get_Status(This, pl) ((This)->lpVtbl ->get_Status (This, pl))
2886#define _Recordset_get_State(This, plObjState) ((This)->lpVtbl ->get_State (This, plObjState))
2887#define _Recordset__xClone(This, ppvObject) ((This)->lpVtbl ->_xClone (This, ppvObject))
2888#define _Recordset_UpdateBatch(This, AffectRecords) ((This)->lpVtbl ->UpdateBatch (This, AffectRecords))
2889#define _Recordset_CancelBatch(This, AffectRecords) ((This)->lpVtbl ->CancelBatch (This, AffectRecords))
2890#define _Recordset_get_CursorLocation(This, plCursorLoc) ((This)->lpVtbl ->get_CursorLocation (This, plCursorLoc))
2891#define _Recordset_put_CursorLocation(This, lCursorLoc) ((This)->lpVtbl ->put_CursorLocation (This, lCursorLoc))
2892#define _Recordset_NextRecordset(This, RecordsAffected, ppiRs) ((This)->lpVtbl ->NextRecordset (This, RecordsAffected, ppiRs))
2893#define _Recordset_Supports(This, CursorOptions, pb) ((This)->lpVtbl ->Supports (This, CursorOptions, pb))
2894#define _Recordset_get_Collect(This, Index, pvar) ((This)->lpVtbl ->get_Collect (This, Index, pvar))
2895#define _Recordset_put_Collect(This, Index, value) ((This)->lpVtbl ->put_Collect (This, Index, value))
2896#define _Recordset_get_MarshalOptions(This, peMarshal) ((This)->lpVtbl ->get_MarshalOptions (This, peMarshal))
2897#define _Recordset_put_MarshalOptions(This, eMarshal) ((This)->lpVtbl ->put_MarshalOptions (This, eMarshal))
2898#define _Recordset_Find(This, Criteria, SkipRecords, SearchDirection, Start) ((This)->lpVtbl ->Find (This, Criteria, SkipRecords, SearchDirection, Start))
2899#define _Recordset_Cancel(This) ((This)->lpVtbl ->Cancel (This))
2900#define _Recordset_get_DataSource(This, ppunkDataSource) ((This)->lpVtbl ->get_DataSource (This, ppunkDataSource))
2901#define _Recordset_putref_DataSource(This, punkDataSource) ((This)->lpVtbl ->putref_DataSource (This, punkDataSource))
2902#define _Recordset__xSave(This, FileName, PersistFormat) ((This)->lpVtbl ->_xSave (This, FileName, PersistFormat))
2903#define _Recordset_get_ActiveCommand(This, ppCmd) ((This)->lpVtbl ->get_ActiveCommand (This, ppCmd))
2904#define _Recordset_put_StayInSync(This, bStayInSync) ((This)->lpVtbl ->put_StayInSync (This, bStayInSync))
2905#define _Recordset_get_StayInSync(This, pbStayInSync) ((This)->lpVtbl ->get_StayInSync (This, pbStayInSync))
2906#define _Recordset_GetString(This, StringFormat, NumRows, ColumnDelimeter, RowDelimeter, NullExpr, pRetString) ((This)->lpVtbl ->GetString (This, StringFormat, NumRows, ColumnDelimeter, RowDelimeter, NullExpr, pRetString))
2907#define _Recordset_get_DataMember(This, pbstrDataMember) ((This)->lpVtbl ->get_DataMember (This, pbstrDataMember))
2908#define _Recordset_put_DataMember(This, bstrDataMember) ((This)->lpVtbl ->put_DataMember (This, bstrDataMember))
2909#define _Recordset_CompareBookmarks(This, Bookmark1, Bookmark2, pCompare) ((This)->lpVtbl ->CompareBookmarks (This, Bookmark1, Bookmark2, pCompare))
2910#define _Recordset_Clone(This, LockType, ppvObject) ((This)->lpVtbl ->Clone (This, LockType, ppvObject))
2911#define _Recordset_Resync(This, AffectRecords, ResyncValues) ((This)->lpVtbl ->Resync (This, AffectRecords, ResyncValues))
2912#define _Recordset_Seek(This, KeyValues, SeekOption) ((This)->lpVtbl ->Seek (This, KeyValues, SeekOption))
2913#define _Recordset_put_Index(This, Index) ((This)->lpVtbl ->put_Index (This, Index))
2914#define _Recordset_get_Index(This, pbstrIndex) ((This)->lpVtbl ->get_Index (This, pbstrIndex))
2915#define _Recordset_Save(This, Destination, PersistFormat) ((This)->lpVtbl ->Save (This, Destination, PersistFormat))
2916#endif
2917#endif
2918#endif
2919#ifndef __ADORecordsetConstruction_INTERFACE_DEFINED__
2920#define __ADORecordsetConstruction_INTERFACE_DEFINED__
2921
2922 EXTERN_C const IID IID_ADORecordsetConstruction;
2923#if defined (__cplusplus) && !defined (CINTERFACE)
2924
2925 MIDL_INTERFACE ("00000283-0000-0010-8000-00AA006D2EA4")
2926 ADORecordsetConstruction : public IDispatch {
2927 public:
2928 virtual HRESULT STDMETHODCALLTYPE get_Rowset (IUnknown **ppRowset) = 0;
2929 virtual HRESULT STDMETHODCALLTYPE put_Rowset (IUnknown *pRowset) = 0;
2930 virtual HRESULT STDMETHODCALLTYPE get_Chapter (ADO_LONGPTR *plChapter) = 0;
2931 virtual HRESULT STDMETHODCALLTYPE put_Chapter (ADO_LONGPTR lChapter) = 0;
2932 virtual HRESULT STDMETHODCALLTYPE get_RowPosition (IUnknown **ppRowPos) = 0;
2933 virtual HRESULT STDMETHODCALLTYPE put_RowPosition (IUnknown *pRowPos) = 0;
2934 };
2935#else
2936 typedef struct ADORecordsetConstructionVtbl {
2937 BEGIN_INTERFACE HRESULT (STDMETHODCALLTYPE *QueryInterface) (ADORecordsetConstruction *This, REFIID riid, _COM_Outptr_ void **ppvObject);
2938 ULONG (STDMETHODCALLTYPE *AddRef) (ADORecordsetConstruction *This);
2939 ULONG (STDMETHODCALLTYPE *Release) (ADORecordsetConstruction *This);
2940 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount) (ADORecordsetConstruction *This, UINT *pctinfo);
2941 HRESULT (STDMETHODCALLTYPE *GetTypeInfo) (ADORecordsetConstruction *This, UINT iTInfo, LCID lcid, ITypeInfo **ppTInfo);
2942 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames) (ADORecordsetConstruction *This, REFIID riid, LPOLESTR *rgszNames, UINT cNames, LCID lcid, DISPID *rgDispId);
2943 HRESULT (STDMETHODCALLTYPE *Invoke) (ADORecordsetConstruction *This, DISPID dispIdMember, REFIID riid, LCID lcid, WORD wFlags, DISPPARAMS *pDispParams, VARIANT *pVarResult, EXCEPINFO *pExcepInfo, UINT *puArgErr);
2944 HRESULT (STDMETHODCALLTYPE *get_Rowset) (ADORecordsetConstruction *This, IUnknown **ppRowset);
2945 HRESULT (STDMETHODCALLTYPE *put_Rowset) (ADORecordsetConstruction *This, IUnknown *pRowset);
2946 HRESULT (STDMETHODCALLTYPE *get_Chapter) (ADORecordsetConstruction *This, ADO_LONGPTR *plChapter);
2947 HRESULT (STDMETHODCALLTYPE *put_Chapter) (ADORecordsetConstruction *This, ADO_LONGPTR lChapter);
2948 HRESULT (STDMETHODCALLTYPE *get_RowPosition) (ADORecordsetConstruction *This, IUnknown **ppRowPos);
2949 HRESULT (STDMETHODCALLTYPE *put_RowPosition) (ADORecordsetConstruction *This, IUnknown *pRowPos);
2950 END_INTERFACE
2951 } ADORecordsetConstructionVtbl;
2952 interface ADORecordsetConstruction {
2953 CONST_VTBL struct ADORecordsetConstructionVtbl *lpVtbl;
2954 };
2955#ifdef COBJMACROS
2956#define ADORecordsetConstruction_QueryInterface(This, riid, ppvObject) ((This)->lpVtbl ->QueryInterface (This, riid, ppvObject))
2957#define ADORecordsetConstruction_AddRef(This) ((This)->lpVtbl ->AddRef (This))
2958#define ADORecordsetConstruction_Release(This) ((This)->lpVtbl ->Release (This))
2959#define ADORecordsetConstruction_GetTypeInfoCount(This, pctinfo) ((This)->lpVtbl ->GetTypeInfoCount (This, pctinfo))
2960#define ADORecordsetConstruction_GetTypeInfo(This, iTInfo, lcid, ppTInfo) ((This)->lpVtbl ->GetTypeInfo (This, iTInfo, lcid, ppTInfo))
2961#define ADORecordsetConstruction_GetIDsOfNames(This, riid, rgszNames, cNames, lcid, rgDispId) ((This)->lpVtbl ->GetIDsOfNames (This, riid, rgszNames, cNames, lcid, rgDispId))
2962#define ADORecordsetConstruction_Invoke(This, dispIdMember, riid, lcid, wFlags, pDispParams, pVarResult, pExcepInfo, puArgErr) ((This)->lpVtbl ->Invoke (This, dispIdMember, riid, lcid, wFlags, pDispParams, pVarResult, pExcepInfo, puArgErr))
2963#define ADORecordsetConstruction_get_Rowset(This, ppRowset) ((This)->lpVtbl ->get_Rowset (This, ppRowset))
2964#define ADORecordsetConstruction_put_Rowset(This, pRowset) ((This)->lpVtbl ->put_Rowset (This, pRowset))
2965#define ADORecordsetConstruction_get_Chapter(This, plChapter) ((This)->lpVtbl ->get_Chapter (This, plChapter))
2966#define ADORecordsetConstruction_put_Chapter(This, lChapter) ((This)->lpVtbl ->put_Chapter (This, lChapter))
2967#define ADORecordsetConstruction_get_RowPosition(This, ppRowPos) ((This)->lpVtbl ->get_RowPosition (This, ppRowPos))
2968#define ADORecordsetConstruction_put_RowPosition(This, pRowPos) ((This)->lpVtbl ->put_RowPosition (This, pRowPos))
2969#endif
2970#endif
2971#endif
2972#ifndef __Field15_INTERFACE_DEFINED__
2973#define __Field15_INTERFACE_DEFINED__
2974
2975 EXTERN_C const IID IID_Field15;
2976#if defined (__cplusplus) && !defined (CINTERFACE)
2977
2978 MIDL_INTERFACE ("00001505-0000-0010-8000-00AA006D2EA4")
2979 Field15 : public _ADO {
2980 public:
2981 virtual HRESULT STDMETHODCALLTYPE get_ActualSize (long *pl) = 0;
2982 virtual HRESULT STDMETHODCALLTYPE get_Attributes (long *pl) = 0;
2983 virtual HRESULT STDMETHODCALLTYPE get_DefinedSize (long *pl) = 0;
2984 virtual HRESULT STDMETHODCALLTYPE get_Name (BSTR *pbstr) = 0;
2985 virtual HRESULT STDMETHODCALLTYPE get_Type (DataTypeEnum *pDataType) = 0;
2986 virtual HRESULT STDMETHODCALLTYPE get_Value (VARIANT *pvar) = 0;
2987 virtual HRESULT STDMETHODCALLTYPE put_Value (VARIANT Val) = 0;
2988 virtual HRESULT STDMETHODCALLTYPE get_Precision (BYTE *pbPrecision) = 0;
2989 virtual HRESULT STDMETHODCALLTYPE get_NumericScale (BYTE *pbNumericScale) = 0;
2990 virtual HRESULT STDMETHODCALLTYPE AppendChunk (VARIANT Data) = 0;
2991 virtual HRESULT STDMETHODCALLTYPE GetChunk (long Length, VARIANT *pvar) = 0;
2992 virtual HRESULT STDMETHODCALLTYPE get_OriginalValue (VARIANT *pvar) = 0;
2993 virtual HRESULT STDMETHODCALLTYPE get_UnderlyingValue (VARIANT *pvar) = 0;
2994 };
2995#else
2996 typedef struct Field15Vtbl {
2997 BEGIN_INTERFACE HRESULT (STDMETHODCALLTYPE *QueryInterface) (Field15 *This, REFIID riid, _COM_Outptr_ void **ppvObject);
2998 ULONG (STDMETHODCALLTYPE *AddRef) (Field15 *This);
2999 ULONG (STDMETHODCALLTYPE *Release) (Field15 *This);
3000 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount) (Field15 *This, UINT *pctinfo);
3001 HRESULT (STDMETHODCALLTYPE *GetTypeInfo) (Field15 *This, UINT iTInfo, LCID lcid, ITypeInfo **ppTInfo);
3002 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames) (Field15 *This, REFIID riid, LPOLESTR *rgszNames, UINT cNames, LCID lcid, DISPID *rgDispId);
3003 HRESULT (STDMETHODCALLTYPE *Invoke) (Field15 *This, DISPID dispIdMember, REFIID riid, LCID lcid, WORD wFlags, DISPPARAMS *pDispParams, VARIANT *pVarResult, EXCEPINFO *pExcepInfo, UINT *puArgErr);
3004 HRESULT (STDMETHODCALLTYPE *get_Properties) (Field15 *This, ADOProperties **ppvObject);
3005 HRESULT (STDMETHODCALLTYPE *get_ActualSize) (Field15 *This, long *pl);
3006 HRESULT (STDMETHODCALLTYPE *get_Attributes) (Field15 *This, long *pl);
3007 HRESULT (STDMETHODCALLTYPE *get_DefinedSize) (Field15 *This, long *pl);
3008 HRESULT (STDMETHODCALLTYPE *get_Name) (Field15 *This, BSTR *pbstr);
3009 HRESULT (STDMETHODCALLTYPE *get_Type) (Field15 *This, DataTypeEnum *pDataType);
3010 HRESULT (STDMETHODCALLTYPE *get_Value) (Field15 *This, VARIANT *pvar);
3011 HRESULT (STDMETHODCALLTYPE *put_Value) (Field15 *This, VARIANT Val);
3012 HRESULT (STDMETHODCALLTYPE *get_Precision) (Field15 *This, BYTE *pbPrecision);
3013 HRESULT (STDMETHODCALLTYPE *get_NumericScale) (Field15 *This, BYTE *pbNumericScale);
3014 HRESULT (STDMETHODCALLTYPE *AppendChunk) (Field15 *This, VARIANT Data);
3015 HRESULT (STDMETHODCALLTYPE *GetChunk) (Field15 *This, long Length, VARIANT *pvar);
3016 HRESULT (STDMETHODCALLTYPE *get_OriginalValue) (Field15 *This, VARIANT *pvar);
3017 HRESULT (STDMETHODCALLTYPE *get_UnderlyingValue) (Field15 *This, VARIANT *pvar);
3018 END_INTERFACE
3019 } Field15Vtbl;
3020 interface Field15 {
3021 CONST_VTBL struct Field15Vtbl *lpVtbl;
3022 };
3023#ifdef COBJMACROS
3024#define Field15_QueryInterface(This, riid, ppvObject) ((This)->lpVtbl ->QueryInterface (This, riid, ppvObject))
3025#define Field15_AddRef(This) ((This)->lpVtbl ->AddRef (This))
3026#define Field15_Release(This) ((This)->lpVtbl ->Release (This))
3027#define Field15_GetTypeInfoCount(This, pctinfo) ((This)->lpVtbl ->GetTypeInfoCount (This, pctinfo))
3028#define Field15_GetTypeInfo(This, iTInfo, lcid, ppTInfo) ((This)->lpVtbl ->GetTypeInfo (This, iTInfo, lcid, ppTInfo))
3029#define Field15_GetIDsOfNames(This, riid, rgszNames, cNames, lcid, rgDispId) ((This)->lpVtbl ->GetIDsOfNames (This, riid, rgszNames, cNames, lcid, rgDispId))
3030#define Field15_Invoke(This, dispIdMember, riid, lcid, wFlags, pDispParams, pVarResult, pExcepInfo, puArgErr) ((This)->lpVtbl ->Invoke (This, dispIdMember, riid, lcid, wFlags, pDispParams, pVarResult, pExcepInfo, puArgErr))
3031#define Field15_get_Properties(This, ppvObject) ((This)->lpVtbl ->get_Properties (This, ppvObject))
3032#define Field15_get_ActualSize(This, pl) ((This)->lpVtbl ->get_ActualSize (This, pl))
3033#define Field15_get_Attributes(This, pl) ((This)->lpVtbl ->get_Attributes (This, pl))
3034#define Field15_get_DefinedSize(This, pl) ((This)->lpVtbl ->get_DefinedSize (This, pl))
3035#define Field15_get_Name(This, pbstr) ((This)->lpVtbl ->get_Name (This, pbstr))
3036#define Field15_get_Type(This, pDataType) ((This)->lpVtbl ->get_Type (This, pDataType))
3037#define Field15_get_Value(This, pvar) ((This)->lpVtbl ->get_Value (This, pvar))
3038#define Field15_put_Value(This, Val) ((This)->lpVtbl ->put_Value (This, Val))
3039#define Field15_get_Precision(This, pbPrecision) ((This)->lpVtbl ->get_Precision (This, pbPrecision))
3040#define Field15_get_NumericScale(This, pbNumericScale) ((This)->lpVtbl ->get_NumericScale (This, pbNumericScale))
3041#define Field15_AppendChunk(This, Data) ((This)->lpVtbl ->AppendChunk (This, Data))
3042#define Field15_GetChunk(This, Length, pvar) ((This)->lpVtbl ->GetChunk (This, Length, pvar))
3043#define Field15_get_OriginalValue(This, pvar) ((This)->lpVtbl ->get_OriginalValue (This, pvar))
3044#define Field15_get_UnderlyingValue(This, pvar) ((This)->lpVtbl ->get_UnderlyingValue (This, pvar))
3045#endif
3046#endif
3047#endif
3048#ifndef __Field20_INTERFACE_DEFINED__
3049#define __Field20_INTERFACE_DEFINED__
3050
3051 EXTERN_C const IID IID_Field20;
3052#if defined (__cplusplus) && !defined (CINTERFACE)
3053
3054 MIDL_INTERFACE ("0000154C-0000-0010-8000-00AA006D2EA4")
3055 Field20 : public _ADO {
3056 public:
3057 virtual HRESULT STDMETHODCALLTYPE get_ActualSize (long *pl) = 0;
3058 virtual HRESULT STDMETHODCALLTYPE get_Attributes (long *pl) = 0;
3059 virtual HRESULT STDMETHODCALLTYPE get_DefinedSize (long *pl) = 0;
3060 virtual HRESULT STDMETHODCALLTYPE get_Name (BSTR *pbstr) = 0;
3061 virtual HRESULT STDMETHODCALLTYPE get_Type (DataTypeEnum *pDataType) = 0;
3062 virtual HRESULT STDMETHODCALLTYPE get_Value (VARIANT *pvar) = 0;
3063 virtual HRESULT STDMETHODCALLTYPE put_Value (VARIANT Val) = 0;
3064 virtual HRESULT STDMETHODCALLTYPE get_Precision (BYTE *pbPrecision) = 0;
3065 virtual HRESULT STDMETHODCALLTYPE get_NumericScale (BYTE *pbNumericScale) = 0;
3066 virtual HRESULT STDMETHODCALLTYPE AppendChunk (VARIANT Data) = 0;
3067 virtual HRESULT STDMETHODCALLTYPE GetChunk (long Length, VARIANT *pvar) = 0;
3068 virtual HRESULT STDMETHODCALLTYPE get_OriginalValue (VARIANT *pvar) = 0;
3069 virtual HRESULT STDMETHODCALLTYPE get_UnderlyingValue (VARIANT *pvar) = 0;
3070 virtual HRESULT STDMETHODCALLTYPE get_DataFormat (IUnknown **ppiDF) = 0;
3071 virtual HRESULT STDMETHODCALLTYPE putref_DataFormat (IUnknown *piDF) = 0;
3072 virtual HRESULT STDMETHODCALLTYPE put_Precision (BYTE bPrecision) = 0;
3073 virtual HRESULT STDMETHODCALLTYPE put_NumericScale (BYTE bScale) = 0;
3074 virtual HRESULT STDMETHODCALLTYPE put_Type (DataTypeEnum DataType) = 0;
3075 virtual HRESULT STDMETHODCALLTYPE put_DefinedSize (long lSize) = 0;
3076 virtual HRESULT STDMETHODCALLTYPE put_Attributes (long lAttributes) = 0;
3077 };
3078#else
3079 typedef struct Field20Vtbl {
3080 BEGIN_INTERFACE HRESULT (STDMETHODCALLTYPE *QueryInterface) (Field20 *This, REFIID riid, _COM_Outptr_ void **ppvObject);
3081 ULONG (STDMETHODCALLTYPE *AddRef) (Field20 *This);
3082 ULONG (STDMETHODCALLTYPE *Release) (Field20 *This);
3083 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount) (Field20 *This, UINT *pctinfo);
3084 HRESULT (STDMETHODCALLTYPE *GetTypeInfo) (Field20 *This, UINT iTInfo, LCID lcid, ITypeInfo **ppTInfo);
3085 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames) (Field20 *This, REFIID riid, LPOLESTR *rgszNames, UINT cNames, LCID lcid, DISPID *rgDispId);
3086 HRESULT (STDMETHODCALLTYPE *Invoke) (Field20 *This, DISPID dispIdMember, REFIID riid, LCID lcid, WORD wFlags, DISPPARAMS *pDispParams, VARIANT *pVarResult, EXCEPINFO *pExcepInfo, UINT *puArgErr);
3087 HRESULT (STDMETHODCALLTYPE *get_Properties) (Field20 *This, ADOProperties **ppvObject);
3088 HRESULT (STDMETHODCALLTYPE *get_ActualSize) (Field20 *This, long *pl);
3089 HRESULT (STDMETHODCALLTYPE *get_Attributes) (Field20 *This, long *pl);
3090 HRESULT (STDMETHODCALLTYPE *get_DefinedSize) (Field20 *This, long *pl);
3091 HRESULT (STDMETHODCALLTYPE *get_Name) (Field20 *This, BSTR *pbstr);
3092 HRESULT (STDMETHODCALLTYPE *get_Type) (Field20 *This, DataTypeEnum *pDataType);
3093 HRESULT (STDMETHODCALLTYPE *get_Value) (Field20 *This, VARIANT *pvar);
3094 HRESULT (STDMETHODCALLTYPE *put_Value) (Field20 *This, VARIANT Val);
3095 HRESULT (STDMETHODCALLTYPE *get_Precision) (Field20 *This, BYTE *pbPrecision);
3096 HRESULT (STDMETHODCALLTYPE *get_NumericScale) (Field20 *This, BYTE *pbNumericScale);
3097 HRESULT (STDMETHODCALLTYPE *AppendChunk) (Field20 *This, VARIANT Data);
3098 HRESULT (STDMETHODCALLTYPE *GetChunk) (Field20 *This, long Length, VARIANT *pvar);
3099 HRESULT (STDMETHODCALLTYPE *get_OriginalValue) (Field20 *This, VARIANT *pvar);
3100 HRESULT (STDMETHODCALLTYPE *get_UnderlyingValue) (Field20 *This, VARIANT *pvar);
3101 HRESULT (STDMETHODCALLTYPE *get_DataFormat) (Field20 *This, IUnknown **ppiDF);
3102 HRESULT (STDMETHODCALLTYPE *putref_DataFormat) (Field20 *This, IUnknown *piDF);
3103 HRESULT (STDMETHODCALLTYPE *put_Precision) (Field20 *This, BYTE bPrecision);
3104 HRESULT (STDMETHODCALLTYPE *put_NumericScale) (Field20 *This, BYTE bScale);
3105 HRESULT (STDMETHODCALLTYPE *put_Type) (Field20 *This, DataTypeEnum DataType);
3106 HRESULT (STDMETHODCALLTYPE *put_DefinedSize) (Field20 *This, long lSize);
3107 HRESULT (STDMETHODCALLTYPE *put_Attributes) (Field20 *This, long lAttributes);
3108 END_INTERFACE
3109 } Field20Vtbl;
3110 interface Field20 {
3111 CONST_VTBL struct Field20Vtbl *lpVtbl;
3112 };
3113#ifdef COBJMACROS
3114#define Field20_QueryInterface(This, riid, ppvObject) ((This)->lpVtbl ->QueryInterface (This, riid, ppvObject))
3115#define Field20_AddRef(This) ((This)->lpVtbl ->AddRef (This))
3116#define Field20_Release(This) ((This)->lpVtbl ->Release (This))
3117#define Field20_GetTypeInfoCount(This, pctinfo) ((This)->lpVtbl ->GetTypeInfoCount (This, pctinfo))
3118#define Field20_GetTypeInfo(This, iTInfo, lcid, ppTInfo) ((This)->lpVtbl ->GetTypeInfo (This, iTInfo, lcid, ppTInfo))
3119#define Field20_GetIDsOfNames(This, riid, rgszNames, cNames, lcid, rgDispId) ((This)->lpVtbl ->GetIDsOfNames (This, riid, rgszNames, cNames, lcid, rgDispId))
3120#define Field20_Invoke(This, dispIdMember, riid, lcid, wFlags, pDispParams, pVarResult, pExcepInfo, puArgErr) ((This)->lpVtbl ->Invoke (This, dispIdMember, riid, lcid, wFlags, pDispParams, pVarResult, pExcepInfo, puArgErr))
3121#define Field20_get_Properties(This, ppvObject) ((This)->lpVtbl ->get_Properties (This, ppvObject))
3122#define Field20_get_ActualSize(This, pl) ((This)->lpVtbl ->get_ActualSize (This, pl))
3123#define Field20_get_Attributes(This, pl) ((This)->lpVtbl ->get_Attributes (This, pl))
3124#define Field20_get_DefinedSize(This, pl) ((This)->lpVtbl ->get_DefinedSize (This, pl))
3125#define Field20_get_Name(This, pbstr) ((This)->lpVtbl ->get_Name (This, pbstr))
3126#define Field20_get_Type(This, pDataType) ((This)->lpVtbl ->get_Type (This, pDataType))
3127#define Field20_get_Value(This, pvar) ((This)->lpVtbl ->get_Value (This, pvar))
3128#define Field20_put_Value(This, Val) ((This)->lpVtbl ->put_Value (This, Val))
3129#define Field20_get_Precision(This, pbPrecision) ((This)->lpVtbl ->get_Precision (This, pbPrecision))
3130#define Field20_get_NumericScale(This, pbNumericScale) ((This)->lpVtbl ->get_NumericScale (This, pbNumericScale))
3131#define Field20_AppendChunk(This, Data) ((This)->lpVtbl ->AppendChunk (This, Data))
3132#define Field20_GetChunk(This, Length, pvar) ((This)->lpVtbl ->GetChunk (This, Length, pvar))
3133#define Field20_get_OriginalValue(This, pvar) ((This)->lpVtbl ->get_OriginalValue (This, pvar))
3134#define Field20_get_UnderlyingValue(This, pvar) ((This)->lpVtbl ->get_UnderlyingValue (This, pvar))
3135#define Field20_get_DataFormat(This, ppiDF) ((This)->lpVtbl ->get_DataFormat (This, ppiDF))
3136#define Field20_putref_DataFormat(This, piDF) ((This)->lpVtbl ->putref_DataFormat (This, piDF))
3137#define Field20_put_Precision(This, bPrecision) ((This)->lpVtbl ->put_Precision (This, bPrecision))
3138#define Field20_put_NumericScale(This, bScale) ((This)->lpVtbl ->put_NumericScale (This, bScale))
3139#define Field20_put_Type(This, DataType) ((This)->lpVtbl ->put_Type (This, DataType))
3140#define Field20_put_DefinedSize(This, lSize) ((This)->lpVtbl ->put_DefinedSize (This, lSize))
3141#define Field20_put_Attributes(This, lAttributes) ((This)->lpVtbl ->put_Attributes (This, lAttributes))
3142#endif
3143#endif
3144#endif
3145#ifndef __Field_INTERFACE_DEFINED__
3146#define __Field_INTERFACE_DEFINED__
3147
3148 EXTERN_C const IID IID_Field;
3149#if defined (__cplusplus) && !defined (CINTERFACE)
3150
3151 MIDL_INTERFACE ("00001569-0000-0010-8000-00AA006D2EA4")
3152 ADOField : public Field20 {
3153 public:
3154 virtual HRESULT STDMETHODCALLTYPE get_Status (long *pFStatus) = 0;
3155 };
3156#else
3157 typedef struct FieldVtbl {
3158 BEGIN_INTERFACE HRESULT (STDMETHODCALLTYPE *QueryInterface) (ADOField *This, REFIID riid, _COM_Outptr_ void **ppvObject);
3159 ULONG (STDMETHODCALLTYPE *AddRef) (ADOField *This);
3160 ULONG (STDMETHODCALLTYPE *Release) (ADOField *This);
3161 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount) (ADOField *This, UINT *pctinfo);
3162 HRESULT (STDMETHODCALLTYPE *GetTypeInfo) (ADOField *This, UINT iTInfo, LCID lcid, ITypeInfo **ppTInfo);
3163 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames) (ADOField *This, REFIID riid, LPOLESTR *rgszNames, UINT cNames, LCID lcid, DISPID *rgDispId);
3164 HRESULT (STDMETHODCALLTYPE *Invoke) (ADOField *This, DISPID dispIdMember, REFIID riid, LCID lcid, WORD wFlags, DISPPARAMS *pDispParams, VARIANT *pVarResult, EXCEPINFO *pExcepInfo, UINT *puArgErr);
3165 HRESULT (STDMETHODCALLTYPE *get_Properties) (ADOField *This, ADOProperties **ppvObject);
3166 HRESULT (STDMETHODCALLTYPE *get_ActualSize) (ADOField *This, long *pl);
3167 HRESULT (STDMETHODCALLTYPE *get_Attributes) (ADOField *This, long *pl);
3168 HRESULT (STDMETHODCALLTYPE *get_DefinedSize) (ADOField *This, long *pl);
3169 HRESULT (STDMETHODCALLTYPE *get_Name) (ADOField *This, BSTR *pbstr);
3170 HRESULT (STDMETHODCALLTYPE *get_Type) (ADOField *This, DataTypeEnum *pDataType);
3171 HRESULT (STDMETHODCALLTYPE *get_Value) (ADOField *This, VARIANT *pvar);
3172 HRESULT (STDMETHODCALLTYPE *put_Value) (ADOField *This, VARIANT Val);
3173 HRESULT (STDMETHODCALLTYPE *get_Precision) (ADOField *This, BYTE *pbPrecision);
3174 HRESULT (STDMETHODCALLTYPE *get_NumericScale) (ADOField *This, BYTE *pbNumericScale);
3175 HRESULT (STDMETHODCALLTYPE *AppendChunk) (ADOField *This, VARIANT Data);
3176 HRESULT (STDMETHODCALLTYPE *GetChunk) (ADOField *This, long Length, VARIANT *pvar);
3177 HRESULT (STDMETHODCALLTYPE *get_OriginalValue) (ADOField *This, VARIANT *pvar);
3178 HRESULT (STDMETHODCALLTYPE *get_UnderlyingValue) (ADOField *This, VARIANT *pvar);
3179 HRESULT (STDMETHODCALLTYPE *get_DataFormat) (ADOField *This, IUnknown **ppiDF);
3180 HRESULT (STDMETHODCALLTYPE *putref_DataFormat) (ADOField *This, IUnknown *piDF);
3181 HRESULT (STDMETHODCALLTYPE *put_Precision) (ADOField *This, BYTE bPrecision);
3182 HRESULT (STDMETHODCALLTYPE *put_NumericScale) (ADOField *This, BYTE bScale);
3183 HRESULT (STDMETHODCALLTYPE *put_Type) (ADOField *This, DataTypeEnum DataType);
3184 HRESULT (STDMETHODCALLTYPE *put_DefinedSize) (ADOField *This, long lSize);
3185 HRESULT (STDMETHODCALLTYPE *put_Attributes) (ADOField *This, long lAttributes);
3186 HRESULT (STDMETHODCALLTYPE *get_Status) (ADOField *This, long *pFStatus);
3187 END_INTERFACE
3188 } FieldVtbl;
3189 interface Field {
3190 CONST_VTBL struct FieldVtbl *lpVtbl;
3191 };
3192#ifdef COBJMACROS
3193#define Field_QueryInterface(This, riid, ppvObject) ((This)->lpVtbl ->QueryInterface (This, riid, ppvObject))
3194#define Field_AddRef(This) ((This)->lpVtbl ->AddRef (This))
3195#define Field_Release(This) ((This)->lpVtbl ->Release (This))
3196#define Field_GetTypeInfoCount(This, pctinfo) ((This)->lpVtbl ->GetTypeInfoCount (This, pctinfo))
3197#define Field_GetTypeInfo(This, iTInfo, lcid, ppTInfo) ((This)->lpVtbl ->GetTypeInfo (This, iTInfo, lcid, ppTInfo))
3198#define Field_GetIDsOfNames(This, riid, rgszNames, cNames, lcid, rgDispId) ((This)->lpVtbl ->GetIDsOfNames (This, riid, rgszNames, cNames, lcid, rgDispId))
3199#define Field_Invoke(This, dispIdMember, riid, lcid, wFlags, pDispParams, pVarResult, pExcepInfo, puArgErr) ((This)->lpVtbl ->Invoke (This, dispIdMember, riid, lcid, wFlags, pDispParams, pVarResult, pExcepInfo, puArgErr))
3200#define Field_get_Properties(This, ppvObject) ((This)->lpVtbl ->get_Properties (This, ppvObject))
3201#define Field_get_ActualSize(This, pl) ((This)->lpVtbl ->get_ActualSize (This, pl))
3202#define Field_get_Attributes(This, pl) ((This)->lpVtbl ->get_Attributes (This, pl))
3203#define Field_get_DefinedSize(This, pl) ((This)->lpVtbl ->get_DefinedSize (This, pl))
3204#define Field_get_Name(This, pbstr) ((This)->lpVtbl ->get_Name (This, pbstr))
3205#define Field_get_Type(This, pDataType) ((This)->lpVtbl ->get_Type (This, pDataType))
3206#define Field_get_Value(This, pvar) ((This)->lpVtbl ->get_Value (This, pvar))
3207#define Field_put_Value(This, Val) ((This)->lpVtbl ->put_Value (This, Val))
3208#define Field_get_Precision(This, pbPrecision) ((This)->lpVtbl ->get_Precision (This, pbPrecision))
3209#define Field_get_NumericScale(This, pbNumericScale) ((This)->lpVtbl ->get_NumericScale (This, pbNumericScale))
3210#define Field_AppendChunk(This, Data) ((This)->lpVtbl ->AppendChunk (This, Data))
3211#define Field_GetChunk(This, Length, pvar) ((This)->lpVtbl ->GetChunk (This, Length, pvar))
3212#define Field_get_OriginalValue(This, pvar) ((This)->lpVtbl ->get_OriginalValue (This, pvar))
3213#define Field_get_UnderlyingValue(This, pvar) ((This)->lpVtbl ->get_UnderlyingValue (This, pvar))
3214#define Field_get_DataFormat(This, ppiDF) ((This)->lpVtbl ->get_DataFormat (This, ppiDF))
3215#define Field_putref_DataFormat(This, piDF) ((This)->lpVtbl ->putref_DataFormat (This, piDF))
3216#define Field_put_Precision(This, bPrecision) ((This)->lpVtbl ->put_Precision (This, bPrecision))
3217#define Field_put_NumericScale(This, bScale) ((This)->lpVtbl ->put_NumericScale (This, bScale))
3218#define Field_put_Type(This, DataType) ((This)->lpVtbl ->put_Type (This, DataType))
3219#define Field_put_DefinedSize(This, lSize) ((This)->lpVtbl ->put_DefinedSize (This, lSize))
3220#define Field_put_Attributes(This, lAttributes) ((This)->lpVtbl ->put_Attributes (This, lAttributes))
3221#define Field_get_Status(This, pFStatus) ((This)->lpVtbl ->get_Status (This, pFStatus))
3222#endif
3223#endif
3224#endif
3225#ifndef __Fields15_INTERFACE_DEFINED__
3226#define __Fields15_INTERFACE_DEFINED__
3227
3228 EXTERN_C const IID IID_Fields15;
3229#if defined (__cplusplus) && !defined (CINTERFACE)
3230
3231 MIDL_INTERFACE ("00001506-0000-0010-8000-00AA006D2EA4")
3232 Fields15 : public _ADOCollection {
3233 public:
3234 virtual HRESULT STDMETHODCALLTYPE get_Item (VARIANT Index, ADOField **ppvObject) = 0;
3235 };
3236#else
3237 typedef struct Fields15Vtbl {
3238 BEGIN_INTERFACE HRESULT (STDMETHODCALLTYPE *QueryInterface) (Fields15 *This, REFIID riid, _COM_Outptr_ void **ppvObject);
3239 ULONG (STDMETHODCALLTYPE *AddRef) (Fields15 *This);
3240 ULONG (STDMETHODCALLTYPE *Release) (Fields15 *This);
3241 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount) (Fields15 *This, UINT *pctinfo);
3242 HRESULT (STDMETHODCALLTYPE *GetTypeInfo) (Fields15 *This, UINT iTInfo, LCID lcid, ITypeInfo **ppTInfo);
3243 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames) (Fields15 *This, REFIID riid, LPOLESTR *rgszNames, UINT cNames, LCID lcid, DISPID *rgDispId);
3244 HRESULT (STDMETHODCALLTYPE *Invoke) (Fields15 *This, DISPID dispIdMember, REFIID riid, LCID lcid, WORD wFlags, DISPPARAMS *pDispParams, VARIANT *pVarResult, EXCEPINFO *pExcepInfo, UINT *puArgErr);
3245 HRESULT (STDMETHODCALLTYPE *get_Count) (Fields15 *This, long *c);
3246 HRESULT (STDMETHODCALLTYPE *_NewEnum) (Fields15 *This, IUnknown **ppvObject);
3247 HRESULT (STDMETHODCALLTYPE *Refresh) (Fields15 *This);
3248 HRESULT (STDMETHODCALLTYPE *get_Item) (Fields15 *This, VARIANT Index, ADOField **ppvObject);
3249 END_INTERFACE
3250 } Fields15Vtbl;
3251 interface Fields15 {
3252 CONST_VTBL struct Fields15Vtbl *lpVtbl;
3253 };
3254#ifdef COBJMACROS
3255#define Fields15_QueryInterface(This, riid, ppvObject) ((This)->lpVtbl ->QueryInterface (This, riid, ppvObject))
3256#define Fields15_AddRef(This) ((This)->lpVtbl ->AddRef (This))
3257#define Fields15_Release(This) ((This)->lpVtbl ->Release (This))
3258#define Fields15_GetTypeInfoCount(This, pctinfo) ((This)->lpVtbl ->GetTypeInfoCount (This, pctinfo))
3259#define Fields15_GetTypeInfo(This, iTInfo, lcid, ppTInfo) ((This)->lpVtbl ->GetTypeInfo (This, iTInfo, lcid, ppTInfo))
3260#define Fields15_GetIDsOfNames(This, riid, rgszNames, cNames, lcid, rgDispId) ((This)->lpVtbl ->GetIDsOfNames (This, riid, rgszNames, cNames, lcid, rgDispId))
3261#define Fields15_Invoke(This, dispIdMember, riid, lcid, wFlags, pDispParams, pVarResult, pExcepInfo, puArgErr) ((This)->lpVtbl ->Invoke (This, dispIdMember, riid, lcid, wFlags, pDispParams, pVarResult, pExcepInfo, puArgErr))
3262#define Fields15_get_Count(This, c) ((This)->lpVtbl ->get_Count (This, c))
3263#define Fields15__NewEnum(This, ppvObject) ((This)->lpVtbl ->_NewEnum (This, ppvObject))
3264#define Fields15_Refresh(This) ((This)->lpVtbl ->Refresh (This))
3265#define Fields15_get_Item(This, Index, ppvObject) ((This)->lpVtbl ->get_Item (This, Index, ppvObject))
3266#endif
3267#endif
3268#endif
3269#ifndef __Fields20_INTERFACE_DEFINED__
3270#define __Fields20_INTERFACE_DEFINED__
3271
3272 EXTERN_C const IID IID_Fields20;
3273#if defined (__cplusplus) && !defined (CINTERFACE)
3274
3275 MIDL_INTERFACE ("0000154D-0000-0010-8000-00AA006D2EA4")
3276 Fields20 : public Fields15 {
3277 public:
3278 virtual HRESULT STDMETHODCALLTYPE _Append (BSTR Name, DataTypeEnum Type, long DefinedSize = 0, FieldAttributeEnum Attrib = adFldUnspecified) = 0;
3279 virtual HRESULT STDMETHODCALLTYPE Delete (VARIANT Index) = 0;
3280 };
3281#else
3282 typedef struct Fields20Vtbl {
3283 BEGIN_INTERFACE HRESULT (STDMETHODCALLTYPE *QueryInterface) (Fields20 *This, REFIID riid, _COM_Outptr_ void **ppvObject);
3284 ULONG (STDMETHODCALLTYPE *AddRef) (Fields20 *This);
3285 ULONG (STDMETHODCALLTYPE *Release) (Fields20 *This);
3286 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount) (Fields20 *This, UINT *pctinfo);
3287 HRESULT (STDMETHODCALLTYPE *GetTypeInfo) (Fields20 *This, UINT iTInfo, LCID lcid, ITypeInfo **ppTInfo);
3288 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames) (Fields20 *This, REFIID riid, LPOLESTR *rgszNames, UINT cNames, LCID lcid, DISPID *rgDispId);
3289 HRESULT (STDMETHODCALLTYPE *Invoke) (Fields20 *This, DISPID dispIdMember, REFIID riid, LCID lcid, WORD wFlags, DISPPARAMS *pDispParams, VARIANT *pVarResult, EXCEPINFO *pExcepInfo, UINT *puArgErr);
3290 HRESULT (STDMETHODCALLTYPE *get_Count) (Fields20 *This, long *c);
3291 HRESULT (STDMETHODCALLTYPE *_NewEnum) (Fields20 *This, IUnknown **ppvObject);
3292 HRESULT (STDMETHODCALLTYPE *Refresh) (Fields20 *This);
3293 HRESULT (STDMETHODCALLTYPE *get_Item) (Fields20 *This, VARIANT Index, ADOField **ppvObject);
3294 HRESULT (STDMETHODCALLTYPE *_Append) (Fields20 *This, BSTR Name, DataTypeEnum Type, long DefinedSize, FieldAttributeEnum Attrib);
3295 HRESULT (STDMETHODCALLTYPE *Delete) (Fields20 *This, VARIANT Index);
3296 END_INTERFACE
3297 } Fields20Vtbl;
3298 interface Fields20 {
3299 CONST_VTBL struct Fields20Vtbl *lpVtbl;
3300 };
3301#ifdef COBJMACROS
3302#define Fields20_QueryInterface(This, riid, ppvObject) ((This)->lpVtbl ->QueryInterface (This, riid, ppvObject))
3303#define Fields20_AddRef(This) ((This)->lpVtbl ->AddRef (This))
3304#define Fields20_Release(This) ((This)->lpVtbl ->Release (This))
3305#define Fields20_GetTypeInfoCount(This, pctinfo) ((This)->lpVtbl ->GetTypeInfoCount (This, pctinfo))
3306#define Fields20_GetTypeInfo(This, iTInfo, lcid, ppTInfo) ((This)->lpVtbl ->GetTypeInfo (This, iTInfo, lcid, ppTInfo))
3307#define Fields20_GetIDsOfNames(This, riid, rgszNames, cNames, lcid, rgDispId) ((This)->lpVtbl ->GetIDsOfNames (This, riid, rgszNames, cNames, lcid, rgDispId))
3308#define Fields20_Invoke(This, dispIdMember, riid, lcid, wFlags, pDispParams, pVarResult, pExcepInfo, puArgErr) ((This)->lpVtbl ->Invoke (This, dispIdMember, riid, lcid, wFlags, pDispParams, pVarResult, pExcepInfo, puArgErr))
3309#define Fields20_get_Count(This, c) ((This)->lpVtbl ->get_Count (This, c))
3310#define Fields20__NewEnum(This, ppvObject) ((This)->lpVtbl ->_NewEnum (This, ppvObject))
3311#define Fields20_Refresh(This) ((This)->lpVtbl ->Refresh (This))
3312#define Fields20_get_Item(This, Index, ppvObject) ((This)->lpVtbl ->get_Item (This, Index, ppvObject))
3313#define Fields20__Append(This, Name, Type, DefinedSize, Attrib) ((This)->lpVtbl ->_Append (This, Name, Type, DefinedSize, Attrib))
3314#define Fields20_Delete(This, Index) ((This)->lpVtbl ->Delete (This, Index))
3315#endif
3316#endif
3317#endif
3318#ifndef __Fields_INTERFACE_DEFINED__
3319#define __Fields_INTERFACE_DEFINED__
3320
3321 EXTERN_C const IID IID_Fields;
3322#if defined (__cplusplus) && !defined (CINTERFACE)
3323
3324 MIDL_INTERFACE ("00001564-0000-0010-8000-00AA006D2EA4")
3325 ADOFields : public Fields20 {
3326 public:
3327 virtual HRESULT STDMETHODCALLTYPE Append (BSTR Name, DataTypeEnum Type, long DefinedSize, FieldAttributeEnum Attrib, VARIANT FieldValue) = 0;
3328 virtual HRESULT STDMETHODCALLTYPE Update (void) = 0;
3329 virtual HRESULT STDMETHODCALLTYPE Resync (ResyncEnum ResyncValues = adResyncAllValues) = 0;
3330 virtual HRESULT STDMETHODCALLTYPE CancelUpdate (void) = 0;
3331 };
3332#else
3333 typedef struct FieldsVtbl {
3334 BEGIN_INTERFACE HRESULT (STDMETHODCALLTYPE *QueryInterface) (ADOFields *This, REFIID riid, _COM_Outptr_ void **ppvObject);
3335 ULONG (STDMETHODCALLTYPE *AddRef) (ADOFields *This);
3336 ULONG (STDMETHODCALLTYPE *Release) (ADOFields *This);
3337 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount) (ADOFields *This, UINT *pctinfo);
3338 HRESULT (STDMETHODCALLTYPE *GetTypeInfo) (ADOFields *This, UINT iTInfo, LCID lcid, ITypeInfo **ppTInfo);
3339 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames) (ADOFields *This, REFIID riid, LPOLESTR *rgszNames, UINT cNames, LCID lcid, DISPID *rgDispId);
3340 HRESULT (STDMETHODCALLTYPE *Invoke) (ADOFields *This, DISPID dispIdMember, REFIID riid, LCID lcid, WORD wFlags, DISPPARAMS *pDispParams, VARIANT *pVarResult, EXCEPINFO *pExcepInfo, UINT *puArgErr);
3341 HRESULT (STDMETHODCALLTYPE *get_Count) (ADOFields *This, long *c);
3342 HRESULT (STDMETHODCALLTYPE *_NewEnum) (ADOFields *This, IUnknown **ppvObject);
3343 HRESULT (STDMETHODCALLTYPE *Refresh) (ADOFields *This);
3344 HRESULT (STDMETHODCALLTYPE *get_Item) (ADOFields *This, VARIANT Index, ADOField **ppvObject);
3345 HRESULT (STDMETHODCALLTYPE *_Append) (ADOFields *This, BSTR Name, DataTypeEnum Type, long DefinedSize, FieldAttributeEnum Attrib);
3346 HRESULT (STDMETHODCALLTYPE *Delete) (ADOFields *This, VARIANT Index);
3347 HRESULT (STDMETHODCALLTYPE *Append) (ADOFields *This, BSTR Name, DataTypeEnum Type, long DefinedSize, FieldAttributeEnum Attrib, VARIANT FieldValue);
3348 HRESULT (STDMETHODCALLTYPE *Update) (ADOFields *This);
3349 HRESULT (STDMETHODCALLTYPE *Resync) (ADOFields *This, ResyncEnum ResyncValues);
3350 HRESULT (STDMETHODCALLTYPE *CancelUpdate) (ADOFields *This);
3351 END_INTERFACE
3352 } FieldsVtbl;
3353 interface Fields {
3354 CONST_VTBL struct FieldsVtbl *lpVtbl;
3355 };
3356#ifdef COBJMACROS
3357#define Fields_QueryInterface(This, riid, ppvObject) ((This)->lpVtbl ->QueryInterface (This, riid, ppvObject))
3358#define Fields_AddRef(This) ((This)->lpVtbl ->AddRef (This))
3359#define Fields_Release(This) ((This)->lpVtbl ->Release (This))
3360#define Fields_GetTypeInfoCount(This, pctinfo) ((This)->lpVtbl ->GetTypeInfoCount (This, pctinfo))
3361#define Fields_GetTypeInfo(This, iTInfo, lcid, ppTInfo) ((This)->lpVtbl ->GetTypeInfo (This, iTInfo, lcid, ppTInfo))
3362#define Fields_GetIDsOfNames(This, riid, rgszNames, cNames, lcid, rgDispId) ((This)->lpVtbl ->GetIDsOfNames (This, riid, rgszNames, cNames, lcid, rgDispId))
3363#define Fields_Invoke(This, dispIdMember, riid, lcid, wFlags, pDispParams, pVarResult, pExcepInfo, puArgErr) ((This)->lpVtbl ->Invoke (This, dispIdMember, riid, lcid, wFlags, pDispParams, pVarResult, pExcepInfo, puArgErr))
3364#define Fields_get_Count(This, c) ((This)->lpVtbl ->get_Count (This, c))
3365#define Fields__NewEnum(This, ppvObject) ((This)->lpVtbl ->_NewEnum (This, ppvObject))
3366#define Fields_Refresh(This) ((This)->lpVtbl ->Refresh (This))
3367#define Fields_get_Item(This, Index, ppvObject) ((This)->lpVtbl ->get_Item (This, Index, ppvObject))
3368#define Fields__Append(This, Name, Type, DefinedSize, Attrib) ((This)->lpVtbl ->_Append (This, Name, Type, DefinedSize, Attrib))
3369#define Fields_Delete(This, Index) ((This)->lpVtbl ->Delete (This, Index))
3370#define Fields_Append(This, Name, Type, DefinedSize, Attrib, FieldValue) ((This)->lpVtbl ->Append (This, Name, Type, DefinedSize, Attrib, FieldValue))
3371#define Fields_Update(This) ((This)->lpVtbl ->Update (This))
3372#define Fields_Resync(This, ResyncValues) ((This)->lpVtbl ->Resync (This, ResyncValues))
3373#define Fields_CancelUpdate(This) ((This)->lpVtbl ->CancelUpdate (This))
3374#endif
3375#endif
3376#endif
3377#ifndef ___Parameter_INTERFACE_DEFINED__
3378#define ___Parameter_INTERFACE_DEFINED__
3379
3380 EXTERN_C const IID IID__Parameter;
3381#if defined (__cplusplus) && !defined (CINTERFACE)
3382
3383 MIDL_INTERFACE ("0000150C-0000-0010-8000-00AA006D2EA4")
3384 _ADOParameter : public _ADO {
3385 public:
3386 virtual HRESULT STDMETHODCALLTYPE get_Name (BSTR *pbstr) = 0;
3387 virtual HRESULT STDMETHODCALLTYPE put_Name (BSTR bstr) = 0;
3388 virtual HRESULT STDMETHODCALLTYPE get_Value (VARIANT *pvar) = 0;
3389 virtual HRESULT STDMETHODCALLTYPE put_Value (VARIANT val) = 0;
3390 virtual HRESULT STDMETHODCALLTYPE get_Type (DataTypeEnum *psDataType) = 0;
3391 virtual HRESULT STDMETHODCALLTYPE put_Type (DataTypeEnum sDataType) = 0;
3392 virtual HRESULT STDMETHODCALLTYPE put_Direction (ParameterDirectionEnum lParmDirection) = 0;
3393 virtual HRESULT STDMETHODCALLTYPE get_Direction (ParameterDirectionEnum *plParmDirection) = 0;
3394 virtual HRESULT STDMETHODCALLTYPE put_Precision (BYTE bPrecision) = 0;
3395 virtual HRESULT STDMETHODCALLTYPE get_Precision (BYTE *pbPrecision) = 0;
3396 virtual HRESULT STDMETHODCALLTYPE put_NumericScale (BYTE bScale) = 0;
3397 virtual HRESULT STDMETHODCALLTYPE get_NumericScale (BYTE *pbScale) = 0;
3398 virtual HRESULT STDMETHODCALLTYPE put_Size (long l) = 0;
3399 virtual HRESULT STDMETHODCALLTYPE get_Size (long *pl) = 0;
3400 virtual HRESULT STDMETHODCALLTYPE AppendChunk (VARIANT Val) = 0;
3401 virtual HRESULT STDMETHODCALLTYPE get_Attributes (LONG *plParmAttribs) = 0;
3402 virtual HRESULT STDMETHODCALLTYPE put_Attributes (LONG lParmAttribs) = 0;
3403 };
3404#else
3405 typedef struct _ParameterVtbl {
3406 BEGIN_INTERFACE HRESULT (STDMETHODCALLTYPE *QueryInterface) (_ADOParameter *This, REFIID riid, _COM_Outptr_ void **ppvObject);
3407 ULONG (STDMETHODCALLTYPE *AddRef) (_ADOParameter *This);
3408 ULONG (STDMETHODCALLTYPE *Release) (_ADOParameter *This);
3409 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount) (_ADOParameter *This, UINT *pctinfo);
3410 HRESULT (STDMETHODCALLTYPE *GetTypeInfo) (_ADOParameter *This, UINT iTInfo, LCID lcid, ITypeInfo **ppTInfo);
3411 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames) (_ADOParameter *This, REFIID riid, LPOLESTR *rgszNames, UINT cNames, LCID lcid, DISPID *rgDispId);
3412 HRESULT (STDMETHODCALLTYPE *Invoke) (_ADOParameter *This, DISPID dispIdMember, REFIID riid, LCID lcid, WORD wFlags, DISPPARAMS *pDispParams, VARIANT *pVarResult, EXCEPINFO *pExcepInfo, UINT *puArgErr);
3413 HRESULT (STDMETHODCALLTYPE *get_Properties) (_ADOParameter *This, ADOProperties **ppvObject);
3414 HRESULT (STDMETHODCALLTYPE *get_Name) (_ADOParameter *This, BSTR *pbstr);
3415 HRESULT (STDMETHODCALLTYPE *put_Name) (_ADOParameter *This, BSTR bstr);
3416 HRESULT (STDMETHODCALLTYPE *get_Value) (_ADOParameter *This, VARIANT *pvar);
3417 HRESULT (STDMETHODCALLTYPE *put_Value) (_ADOParameter *This, VARIANT val);
3418 HRESULT (STDMETHODCALLTYPE *get_Type) (_ADOParameter *This, DataTypeEnum *psDataType);
3419 HRESULT (STDMETHODCALLTYPE *put_Type) (_ADOParameter *This, DataTypeEnum sDataType);
3420 HRESULT (STDMETHODCALLTYPE *put_Direction) (_ADOParameter *This, ParameterDirectionEnum lParmDirection);
3421 HRESULT (STDMETHODCALLTYPE *get_Direction) (_ADOParameter *This, ParameterDirectionEnum *plParmDirection);
3422 HRESULT (STDMETHODCALLTYPE *put_Precision) (_ADOParameter *This, BYTE bPrecision);
3423 HRESULT (STDMETHODCALLTYPE *get_Precision) (_ADOParameter *This, BYTE *pbPrecision);
3424 HRESULT (STDMETHODCALLTYPE *put_NumericScale) (_ADOParameter *This, BYTE bScale);
3425 HRESULT (STDMETHODCALLTYPE *get_NumericScale) (_ADOParameter *This, BYTE *pbScale);
3426 HRESULT (STDMETHODCALLTYPE *put_Size) (_ADOParameter *This, long l);
3427 HRESULT (STDMETHODCALLTYPE *get_Size) (_ADOParameter *This, long *pl);
3428 HRESULT (STDMETHODCALLTYPE *AppendChunk) (_ADOParameter *This, VARIANT Val);
3429 HRESULT (STDMETHODCALLTYPE *get_Attributes) (_ADOParameter *This, LONG *plParmAttribs);
3430 HRESULT (STDMETHODCALLTYPE *put_Attributes) (_ADOParameter *This, LONG lParmAttribs);
3431 END_INTERFACE
3432 } _ParameterVtbl;
3433 interface _Parameter {
3434 CONST_VTBL struct _ParameterVtbl *lpVtbl;
3435 };
3436#ifdef COBJMACROS
3437#define _Parameter_QueryInterface(This, riid, ppvObject) ((This)->lpVtbl ->QueryInterface (This, riid, ppvObject))
3438#define _Parameter_AddRef(This) ((This)->lpVtbl ->AddRef (This))
3439#define _Parameter_Release(This) ((This)->lpVtbl ->Release (This))
3440#define _Parameter_GetTypeInfoCount(This, pctinfo) ((This)->lpVtbl ->GetTypeInfoCount (This, pctinfo))
3441#define _Parameter_GetTypeInfo(This, iTInfo, lcid, ppTInfo) ((This)->lpVtbl ->GetTypeInfo (This, iTInfo, lcid, ppTInfo))
3442#define _Parameter_GetIDsOfNames(This, riid, rgszNames, cNames, lcid, rgDispId) ((This)->lpVtbl ->GetIDsOfNames (This, riid, rgszNames, cNames, lcid, rgDispId))
3443#define _Parameter_Invoke(This, dispIdMember, riid, lcid, wFlags, pDispParams, pVarResult, pExcepInfo, puArgErr) ((This)->lpVtbl ->Invoke (This, dispIdMember, riid, lcid, wFlags, pDispParams, pVarResult, pExcepInfo, puArgErr))
3444#define _Parameter_get_Properties(This, ppvObject) ((This)->lpVtbl ->get_Properties (This, ppvObject))
3445#define _Parameter_get_Name(This, pbstr) ((This)->lpVtbl ->get_Name (This, pbstr))
3446#define _Parameter_put_Name(This, bstr) ((This)->lpVtbl ->put_Name (This, bstr))
3447#define _Parameter_get_Value(This, pvar) ((This)->lpVtbl ->get_Value (This, pvar))
3448#define _Parameter_put_Value(This, val) ((This)->lpVtbl ->put_Value (This, val))
3449#define _Parameter_get_Type(This, psDataType) ((This)->lpVtbl ->get_Type (This, psDataType))
3450#define _Parameter_put_Type(This, sDataType) ((This)->lpVtbl ->put_Type (This, sDataType))
3451#define _Parameter_put_Direction(This, lParmDirection) ((This)->lpVtbl ->put_Direction (This, lParmDirection))
3452#define _Parameter_get_Direction(This, plParmDirection) ((This)->lpVtbl ->get_Direction (This, plParmDirection))
3453#define _Parameter_put_Precision(This, bPrecision) ((This)->lpVtbl ->put_Precision (This, bPrecision))
3454#define _Parameter_get_Precision(This, pbPrecision) ((This)->lpVtbl ->get_Precision (This, pbPrecision))
3455#define _Parameter_put_NumericScale(This, bScale) ((This)->lpVtbl ->put_NumericScale (This, bScale))
3456#define _Parameter_get_NumericScale(This, pbScale) ((This)->lpVtbl ->get_NumericScale (This, pbScale))
3457#define _Parameter_put_Size(This, l) ((This)->lpVtbl ->put_Size (This, l))
3458#define _Parameter_get_Size(This, pl) ((This)->lpVtbl ->get_Size (This, pl))
3459#define _Parameter_AppendChunk(This, Val) ((This)->lpVtbl ->AppendChunk (This, Val))
3460#define _Parameter_get_Attributes(This, plParmAttribs) ((This)->lpVtbl ->get_Attributes (This, plParmAttribs))
3461#define _Parameter_put_Attributes(This, lParmAttribs) ((This)->lpVtbl ->put_Attributes (This, lParmAttribs))
3462#endif
3463#endif
3464#endif
3465 EXTERN_C const CLSID CLSID_Parameter;
3466#ifdef __cplusplus
3467 Parameter;
3468#endif
3469#ifndef __Parameters_INTERFACE_DEFINED__
3470#define __Parameters_INTERFACE_DEFINED__
3471
3472 EXTERN_C const IID IID_Parameters;
3473#if defined (__cplusplus) && !defined (CINTERFACE)
3474
3475 MIDL_INTERFACE ("0000150D-0000-0010-8000-00AA006D2EA4")
3476 ADOParameters : public _ADODynaCollection {
3477 public:
3478 virtual HRESULT STDMETHODCALLTYPE get_Item (VARIANT Index, _ADOParameter **ppvObject) = 0;
3479 };
3480#else
3481 typedef struct ParametersVtbl {
3482 BEGIN_INTERFACE HRESULT (STDMETHODCALLTYPE *QueryInterface) (ADOParameters *This, REFIID riid, _COM_Outptr_ void **ppvObject);
3483 ULONG (STDMETHODCALLTYPE *AddRef) (ADOParameters *This);
3484 ULONG (STDMETHODCALLTYPE *Release) (ADOParameters *This);
3485 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount) (ADOParameters *This, UINT *pctinfo);
3486 HRESULT (STDMETHODCALLTYPE *GetTypeInfo) (ADOParameters *This, UINT iTInfo, LCID lcid, ITypeInfo **ppTInfo);
3487 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames) (ADOParameters *This, REFIID riid, LPOLESTR *rgszNames, UINT cNames, LCID lcid, DISPID *rgDispId);
3488 HRESULT (STDMETHODCALLTYPE *Invoke) (ADOParameters *This, DISPID dispIdMember, REFIID riid, LCID lcid, WORD wFlags, DISPPARAMS *pDispParams, VARIANT *pVarResult, EXCEPINFO *pExcepInfo, UINT *puArgErr);
3489 HRESULT (STDMETHODCALLTYPE *get_Count) (ADOParameters *This, long *c);
3490 HRESULT (STDMETHODCALLTYPE *_NewEnum) (ADOParameters *This, IUnknown **ppvObject);
3491 HRESULT (STDMETHODCALLTYPE *Refresh) (ADOParameters *This);
3492 HRESULT (STDMETHODCALLTYPE *Append) (ADOParameters *This, IDispatch *Object);
3493 HRESULT (STDMETHODCALLTYPE *Delete) (ADOParameters *This, VARIANT Index);
3494 HRESULT (STDMETHODCALLTYPE *get_Item) (ADOParameters *This, VARIANT Index, _ADOParameter **ppvObject);
3495 END_INTERFACE
3496 } ParametersVtbl;
3497 interface Parameters {
3498 CONST_VTBL struct ParametersVtbl *lpVtbl;
3499 };
3500#ifdef COBJMACROS
3501#define Parameters_QueryInterface(This, riid, ppvObject) ((This)->lpVtbl ->QueryInterface (This, riid, ppvObject))
3502#define Parameters_AddRef(This) ((This)->lpVtbl ->AddRef (This))
3503#define Parameters_Release(This) ((This)->lpVtbl ->Release (This))
3504#define Parameters_GetTypeInfoCount(This, pctinfo) ((This)->lpVtbl ->GetTypeInfoCount (This, pctinfo))
3505#define Parameters_GetTypeInfo(This, iTInfo, lcid, ppTInfo) ((This)->lpVtbl ->GetTypeInfo (This, iTInfo, lcid, ppTInfo))
3506#define Parameters_GetIDsOfNames(This, riid, rgszNames, cNames, lcid, rgDispId) ((This)->lpVtbl ->GetIDsOfNames (This, riid, rgszNames, cNames, lcid, rgDispId))
3507#define Parameters_Invoke(This, dispIdMember, riid, lcid, wFlags, pDispParams, pVarResult, pExcepInfo, puArgErr) ((This)->lpVtbl ->Invoke (This, dispIdMember, riid, lcid, wFlags, pDispParams, pVarResult, pExcepInfo, puArgErr))
3508#define Parameters_get_Count(This, c) ((This)->lpVtbl ->get_Count (This, c))
3509#define Parameters__NewEnum(This, ppvObject) ((This)->lpVtbl ->_NewEnum (This, ppvObject))
3510#define Parameters_Refresh(This) ((This)->lpVtbl ->Refresh (This))
3511#define Parameters_Append(This, Object) ((This)->lpVtbl ->Append (This, Object))
3512#define Parameters_Delete(This, Index) ((This)->lpVtbl ->Delete (This, Index))
3513#define Parameters_get_Item(This, Index, ppvObject) ((This)->lpVtbl ->get_Item (This, Index, ppvObject))
3514#endif
3515#endif
3516#endif
3517#ifndef __Property_INTERFACE_DEFINED__
3518#define __Property_INTERFACE_DEFINED__
3519
3520 EXTERN_C const IID IID_Property;
3521#if defined (__cplusplus) && !defined (CINTERFACE)
3522
3523 MIDL_INTERFACE ("00000503-0000-0010-8000-00AA006D2EA4")
3524 ADOProperty : public IDispatch {
3525 public:
3526 virtual HRESULT STDMETHODCALLTYPE get_Value (VARIANT *pval) = 0;
3527 virtual HRESULT STDMETHODCALLTYPE put_Value (VARIANT val) = 0;
3528 virtual HRESULT STDMETHODCALLTYPE get_Name (BSTR *pbstr) = 0;
3529 virtual HRESULT STDMETHODCALLTYPE get_Type (DataTypeEnum *ptype) = 0;
3530 virtual HRESULT STDMETHODCALLTYPE get_Attributes (long *plAttributes) = 0;
3531 virtual HRESULT STDMETHODCALLTYPE put_Attributes (long lAttributes) = 0;
3532 };
3533#else
3534 typedef struct PropertyVtbl {
3535 BEGIN_INTERFACE HRESULT (STDMETHODCALLTYPE *QueryInterface) (ADOProperty *This, REFIID riid, _COM_Outptr_ void **ppvObject);
3536 ULONG (STDMETHODCALLTYPE *AddRef) (ADOProperty *This);
3537 ULONG (STDMETHODCALLTYPE *Release) (ADOProperty *This);
3538 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount) (ADOProperty *This, UINT *pctinfo);
3539 HRESULT (STDMETHODCALLTYPE *GetTypeInfo) (ADOProperty *This, UINT iTInfo, LCID lcid, ITypeInfo **ppTInfo);
3540 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames) (ADOProperty *This, REFIID riid, LPOLESTR *rgszNames, UINT cNames, LCID lcid, DISPID *rgDispId);
3541 HRESULT (STDMETHODCALLTYPE *Invoke) (ADOProperty *This, DISPID dispIdMember, REFIID riid, LCID lcid, WORD wFlags, DISPPARAMS *pDispParams, VARIANT *pVarResult, EXCEPINFO *pExcepInfo, UINT *puArgErr);
3542 HRESULT (STDMETHODCALLTYPE *get_Value) (ADOProperty *This, VARIANT *pval);
3543 HRESULT (STDMETHODCALLTYPE *put_Value) (ADOProperty *This, VARIANT val);
3544 HRESULT (STDMETHODCALLTYPE *get_Name) (ADOProperty *This, BSTR *pbstr);
3545 HRESULT (STDMETHODCALLTYPE *get_Type) (ADOProperty *This, DataTypeEnum *ptype);
3546 HRESULT (STDMETHODCALLTYPE *get_Attributes) (ADOProperty *This, long *plAttributes);
3547 HRESULT (STDMETHODCALLTYPE *put_Attributes) (ADOProperty *This, long lAttributes);
3548 END_INTERFACE
3549 } PropertyVtbl;
3550 interface Property {
3551 CONST_VTBL struct PropertyVtbl *lpVtbl;
3552 };
3553#ifdef COBJMACROS
3554#define Property_QueryInterface(This, riid, ppvObject) ((This)->lpVtbl ->QueryInterface (This, riid, ppvObject))
3555#define Property_AddRef(This) ((This)->lpVtbl ->AddRef (This))
3556#define Property_Release(This) ((This)->lpVtbl ->Release (This))
3557#define Property_GetTypeInfoCount(This, pctinfo) ((This)->lpVtbl ->GetTypeInfoCount (This, pctinfo))
3558#define Property_GetTypeInfo(This, iTInfo, lcid, ppTInfo) ((This)->lpVtbl ->GetTypeInfo (This, iTInfo, lcid, ppTInfo))
3559#define Property_GetIDsOfNames(This, riid, rgszNames, cNames, lcid, rgDispId) ((This)->lpVtbl ->GetIDsOfNames (This, riid, rgszNames, cNames, lcid, rgDispId))
3560#define Property_Invoke(This, dispIdMember, riid, lcid, wFlags, pDispParams, pVarResult, pExcepInfo, puArgErr) ((This)->lpVtbl ->Invoke (This, dispIdMember, riid, lcid, wFlags, pDispParams, pVarResult, pExcepInfo, puArgErr))
3561#define Property_get_Value(This, pval) ((This)->lpVtbl ->get_Value (This, pval))
3562#define Property_put_Value(This, val) ((This)->lpVtbl ->put_Value (This, val))
3563#define Property_get_Name(This, pbstr) ((This)->lpVtbl ->get_Name (This, pbstr))
3564#define Property_get_Type(This, ptype) ((This)->lpVtbl ->get_Type (This, ptype))
3565#define Property_get_Attributes(This, plAttributes) ((This)->lpVtbl ->get_Attributes (This, plAttributes))
3566#define Property_put_Attributes(This, lAttributes) ((This)->lpVtbl ->put_Attributes (This, lAttributes))
3567#endif
3568#endif
3569#endif
3570#ifndef __Properties_INTERFACE_DEFINED__
3571#define __Properties_INTERFACE_DEFINED__
3572
3573 EXTERN_C const IID IID_Properties;
3574#if defined (__cplusplus) && !defined (CINTERFACE)
3575
3576 MIDL_INTERFACE ("00000504-0000-0010-8000-00AA006D2EA4")
3577 ADOProperties : public _ADOCollection {
3578 public:
3579 virtual HRESULT STDMETHODCALLTYPE get_Item (VARIANT Index, ADOProperty **ppvObject) = 0;
3580 };
3581#else
3582 typedef struct PropertiesVtbl {
3583 BEGIN_INTERFACE HRESULT (STDMETHODCALLTYPE *QueryInterface) (ADOProperties *This, REFIID riid, _COM_Outptr_ void **ppvObject);
3584 ULONG (STDMETHODCALLTYPE *AddRef) (ADOProperties *This);
3585 ULONG (STDMETHODCALLTYPE *Release) (ADOProperties *This);
3586 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount) (ADOProperties *This, UINT *pctinfo);
3587 HRESULT (STDMETHODCALLTYPE *GetTypeInfo) (ADOProperties *This, UINT iTInfo, LCID lcid, ITypeInfo **ppTInfo);
3588 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames) (ADOProperties *This, REFIID riid, LPOLESTR *rgszNames, UINT cNames, LCID lcid, DISPID *rgDispId);
3589 HRESULT (STDMETHODCALLTYPE *Invoke) (ADOProperties *This, DISPID dispIdMember, REFIID riid, LCID lcid, WORD wFlags, DISPPARAMS *pDispParams, VARIANT *pVarResult, EXCEPINFO *pExcepInfo, UINT *puArgErr);
3590 HRESULT (STDMETHODCALLTYPE *get_Count) (ADOProperties *This, long *c);
3591 HRESULT (STDMETHODCALLTYPE *_NewEnum) (ADOProperties *This, IUnknown **ppvObject);
3592 HRESULT (STDMETHODCALLTYPE *Refresh) (ADOProperties *This);
3593 HRESULT (STDMETHODCALLTYPE *get_Item) (ADOProperties *This, VARIANT Index, ADOProperty **ppvObject);
3594 END_INTERFACE
3595 } PropertiesVtbl;
3596 interface Properties {
3597 CONST_VTBL struct PropertiesVtbl *lpVtbl;
3598 };
3599#ifdef COBJMACROS
3600#define Properties_QueryInterface(This, riid, ppvObject) ((This)->lpVtbl ->QueryInterface (This, riid, ppvObject))
3601#define Properties_AddRef(This) ((This)->lpVtbl ->AddRef (This))
3602#define Properties_Release(This) ((This)->lpVtbl ->Release (This))
3603#define Properties_GetTypeInfoCount(This, pctinfo) ((This)->lpVtbl ->GetTypeInfoCount (This, pctinfo))
3604#define Properties_GetTypeInfo(This, iTInfo, lcid, ppTInfo) ((This)->lpVtbl ->GetTypeInfo (This, iTInfo, lcid, ppTInfo))
3605#define Properties_GetIDsOfNames(This, riid, rgszNames, cNames, lcid, rgDispId) ((This)->lpVtbl ->GetIDsOfNames (This, riid, rgszNames, cNames, lcid, rgDispId))
3606#define Properties_Invoke(This, dispIdMember, riid, lcid, wFlags, pDispParams, pVarResult, pExcepInfo, puArgErr) ((This)->lpVtbl ->Invoke (This, dispIdMember, riid, lcid, wFlags, pDispParams, pVarResult, pExcepInfo, puArgErr))
3607#define Properties_get_Count(This, c) ((This)->lpVtbl ->get_Count (This, c))
3608#define Properties__NewEnum(This, ppvObject) ((This)->lpVtbl ->_NewEnum (This, ppvObject))
3609#define Properties_Refresh(This) ((This)->lpVtbl ->Refresh (This))
3610#define Properties_get_Item(This, Index, ppvObject) ((This)->lpVtbl ->get_Item (This, Index, ppvObject))
3611#endif
3612#endif
3613#endif
3614#endif
3615
3616 extern RPC_IF_HANDLE __MIDL_itf_ado10_0000_0001_v0_0_c_ifspec;
3617 extern RPC_IF_HANDLE __MIDL_itf_ado10_0000_0001_v0_0_s_ifspec;
3618#ifdef __cplusplus
3619}
3620#endif
3621#endif
3622#define ADOCommand _ADOCommand
3623#define ADORecordset _ADORecordset
3624#define ADOTransaction _ADOTransaction
3625#define ADOParameter _ADOParameter
3626#define ADOConnection _ADOConnection
3627#define ADOCollection _ADOCollection
3628#define ADODynaCollection _ADODynaCollection
3629#define ADORecord _ADORecord
3630#define ADORecField _ADORecField
3631#define ADOStream _ADOStream
3632#endif
3633
3634#endif
Note: See TracBrowser for help on using the repository browser.