dinput: Implement DIDBAM_PRESERVE BuildActionMap flag.
[wine.git] / include / msado15_backcompat.idl
blob0171ce492bf85a15fb1ea33c90c3c3c39dec6061
1 /*
2 * Copyright 2019 Hans Leidekker for CodeWeavers
4 * This library is free software; you can redistribute it and/or
5 * modify it under the terms of the GNU Lesser General Public
6 * License as published by the Free Software Foundation; either
7 * version 2.1 of the License, or (at your option) any later version.
9 * This library is distributed in the hope that it will be useful,
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12 * Lesser General Public License for more details.
14 * You should have received a copy of the GNU Lesser General Public
15 * License along with this library; if not, write to the Free Software
16 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
19 import "oaidl.idl";
21 interface _ADO;
22 interface _Collection;
23 interface _Command;
24 interface _Connection;
25 interface _DynaCollection;
26 interface _Parameter;
27 interface _Record;
28 interface _Recordset;
29 interface _Stream;
30 interface ADODebugging;
31 interface ADOConnectionConstruction;
32 interface ADOCommandConstruction;
33 interface ADORecordsetConstruction;
34 interface Command15;
35 interface Command25;
36 interface Error;
37 interface Errors;
38 interface Field;
39 interface Field15;
40 interface Field20;
41 interface Fields;
42 interface Fields15;
43 interface Fields20;
44 interface Parameters;
45 interface Properties;
46 interface Property;
47 interface Recordset15;
48 interface Recordset20;
49 interface Recordset21;
50 interface ConnectionEventsVt;
51 dispinterface ConnectionEvents;
52 dispinterface RecordsetEvents;
54 typedef [uuid(54D8B4B9-663B-4a9c-95F6-0E749ABD70F1)] LONG_PTR ADO_LONGPTR;
56 typedef [uuid(0000052A-0000-0010-8000-00AA006D2EA4)] enum ErrorValueEnum
58 adErrInvalidArgument = 3001,
59 adErrOpeningFile = 3002,
60 adErrReadFile = 3003,
61 adErrWriteFile = 3004,
62 adErrNoCurrentRecord = 3021,
63 adErrIllegalOperation = 3219,
64 adErrCantChangeProvider = 3220,
65 adErrInTransaction = 3246,
66 adErrFeatureNotAvailable = 3251,
67 adErrItemNotFound = 3265,
68 adErrObjectInCollection = 3367,
69 adErrObjectNotSet = 3420,
70 adErrDataConversion = 3421,
71 adErrObjectClosed = 3704,
72 adErrObjectOpen = 3705,
73 adErrProviderNotFound = 3706,
74 adErrBoundToCommand = 3707,
75 adErrInvalidParamInfo = 3708,
76 adErrInvalidConnection = 3709,
77 adErrNotReentrant = 3710,
78 adErrStillExecuting = 3711,
79 adErrOperationCancelled = 3712,
80 adErrStillConnecting = 3713,
81 adErrInvalidTransaction = 3714,
82 adErrNotExecuting = 3715,
83 adErrUnsafeOperation = 3716,
84 adWrnSecurityDialog = 3717,
85 adWrnSecurityDialogHeader = 3718,
86 adErrIntegrityViolation = 3719,
87 adErrPermissionDenied = 3720,
88 adErrDataOverflow = 3721,
89 adErrSchemaViolation = 3722,
90 adErrSignMismatch = 3723,
91 adErrCantConvertvalue = 3724,
92 adErrCantCreate = 3725,
93 adErrColumnNotOnThisRow = 3726,
94 adErrURLDoesNotExist = 3727,
95 adErrTreePermissionDenied = 3728,
96 adErrInvalidURL = 3729,
97 adErrResourceLocked = 3730,
98 adErrResourceExists = 3731,
99 adErrCannotComplete = 3732,
100 adErrVolumeNotFound = 3733,
101 adErrOutOfSpace = 3734,
102 adErrResourceOutOfScope = 3735,
103 adErrUnavailable = 3736,
104 adErrURLNamedRowDoesNotExist = 3737,
105 adErrDelResOutOfScope = 3738,
106 adErrPropInvalidColumn = 3739,
107 adErrPropInvalidOption = 3740,
108 adErrPropInvalidValue = 3741,
109 adErrPropConflicting = 3742,
110 adErrPropNotAllSettable = 3743,
111 adErrPropNotSet = 3744,
112 adErrPropNotSettable = 3745,
113 adErrPropNotSupported = 3746,
114 adErrCatalogNotSet = 3747,
115 adErrCantChangeConnection = 3748,
116 adErrFieldsUpdateFailed = 3749,
117 adErrDenyNotSupported = 3750,
118 adErrDenyTypeNotSupported = 3751,
119 adErrProviderNotSpecified = 3753,
120 adErrConnectionStringTooLong = 3754
121 } ErrorValueEnum;
123 typedef [uuid(00000528-0000-0010-8000-00aa006d2ea4)] enum PositionEnum
125 adPosUnknown = -1,
126 adPosBOF = -2,
127 adPosEOF = -3
128 } PositionEnum;
130 typedef [uuid(a56187c5-d690-4037-ae32-a00edc376ac3), public] ADO_LONGPTR PositionEnum_Param;
132 typedef [uuid(0000051f-0000-0010-8000-00aa006d2ea4)] enum DataTypeEnum
134 adEmpty = 0,
135 adTinyInt = 16,
136 adSmallInt = 2,
137 adInteger = 3,
138 adBigInt = 20,
139 adUnsignedTinyInt = 17,
140 adUnsignedSmallInt = 18,
141 adUnsignedInt = 19,
142 adUnsignedBigInt = 21,
143 adSingle = 4,
144 adDouble = 5,
145 adCurrency = 6,
146 adDecimal = 14,
147 adNumeric = 131,
148 adBoolean = 11,
149 adError = 10,
150 adUserDefined = 132,
151 adVariant = 12,
152 adIDispatch = 9,
153 adIUnknown = 13,
154 adGUID = 72,
155 adDate = 7,
156 adDBDate = 133,
157 adDBTime = 134,
158 adDBTimeStamp = 135,
159 adBSTR = 8,
160 adChar = 129,
161 adVarChar = 200,
162 adLongVarChar = 201,
163 adWChar = 130,
164 adVarWChar = 202,
165 adLongVarWChar = 203,
166 adBinary = 128,
167 adVarBinary = 204,
168 adLongVarBinary = 205,
169 adChapter = 136,
170 adFileTime = 64,
171 adPropVariant = 138,
172 adVarNumeric = 139,
173 adArray = 0x2000
174 } DataTypeEnum;
176 typedef [uuid(00000548-0000-0010-8000-00aa006d2ea4)] enum PersistFormatEnum
178 adPersistADTG = 0,
179 adPersistXML = 1
180 } PersistFormatEnum;
182 typedef [uuid(00000552-0000-0010-8000-00aa006d2ea4)] enum SeekEnum
184 adSeekFirstEQ = 1,
185 adSeekLastEQ = 2,
186 adSeekAfterEQ = 4,
187 adSeekAfter = 8,
188 adSeekBeforeEQ = 16,
189 adSeekBefore = 32
190 } SeekEnum;
192 typedef [uuid(0000051b-0000-0010-8000-00aa006d2ea4)] enum CursorTypeEnum
194 adOpenUnspecified = -1,
195 adOpenForwardOnly = 0,
196 adOpenKeyset = 1,
197 adOpenDynamic = 2,
198 adOpenStatic = 3
199 } CursorTypeEnum;
201 typedef [uuid(00000525-0000-0010-8000-00aa006d2ea4)] enum FieldAttributeEnum
203 adFldUnspecified = -1,
204 adFldMayDefer = 0x00000002,
205 adFldUpdatable = 0x00000004,
206 adFldUnknownUpdatable = 0x00000008,
207 adFldFixed = 0x00000010,
208 adFldIsNullable = 0x00000020,
209 adFldMayBeNull = 0x00000040,
210 adFldLong = 0x00000080,
211 adFldRowID = 0x00000100,
212 adFldRowVersion = 0x00000200,
213 adFldCacheDeferred = 0x00001000,
214 adFldIsChapter = 0x00002000,
215 adFldNegativeScale = 0x00004000,
216 adFldKeyColumn = 0x00008000,
217 adFldIsRowURL = 0x00010000,
218 adFldIsDefaultStream = 0x00020000,
219 adFldIsCollection = 0x00040000
220 } FieldAttributeEnum;
222 typedef [uuid(00000544-0000-0010-8000-00aa006d2ea4)] enum ResyncEnum
224 adResyncUnderlyingValues = 1,
225 adResyncAllValues = 2
226 } ResyncEnum;
228 typedef [uuid(0000051d-0000-0010-8000-00aa006d2ea4)] enum LockTypeEnum
230 adLockUnspecified = -1,
231 adLockReadOnly = 1,
232 adLockPessimistic = 2,
233 adLockOptimistic = 3,
234 adLockBatchOptimistic = 4
235 } LockTypeEnum;
237 typedef [uuid(00000543-0000-0010-8000-00aa006d2ea4)] enum AffectEnum
239 adAffectCurrent = 1,
240 adAffectGroup = 2,
241 adAffectAll = 3,
242 adAffectAllChapters = 4
243 } AffectEnum;
245 typedef [uuid(00000526-0000-0010-8000-00aa006d2ea4)] enum EditModeEnum
247 adEditNone = 0,
248 adEditInProgress = 1,
249 adEditAdd = 2,
250 adEditDelete = 4
251 } EditModeEnum;
253 typedef [uuid(0000052f-0000-0010-8000-00aa006d2ea4)] enum CursorLocationEnum
255 adUseNone = 1,
256 adUseServer = 2,
257 adUseClient = 3,
258 adUseClientBatch = 3
259 } CursorLocationEnum;
261 typedef [uuid(0000051c-0000-0010-8000-00aa006d2ea4)] enum CursorOptionEnum
263 adHoldRecords = 256,
264 adMovePrevious = 512,
265 adBookmark = 8192,
266 adApproxPosition = 16384,
267 adUpdateBatch = 65536,
268 adResync = 131072,
269 adNotify = 262144,
270 adFind = 524288,
271 adSeek = 4194304,
272 adIndex = 8388608,
273 adAddNew = 16778240,
274 adDelete = 16779264,
275 adUpdate = 16809984
276 } CursorOptionEnum;
278 typedef [uuid(00000540-0000-0010-8000-00aa006d2ea4)] enum MarshalOptionsEnum
280 adMarshalAll = 0,
281 adMarshalModifiedOnly = 1
282 } MarshalOptionsEnum;
284 typedef [uuid(00000547-0000-0010-8000-00aa006d2ea4)] enum SearchDirectionEnum
286 adSearchForward = 1,
287 adSearchBackward = -1
288 } SearchDirectionEnum;
290 typedef [uuid(00000549-0000-0010-8000-00aa006d2ea4)] enum StringFormatEnum
292 adClipString = 2
293 } StringFormatEnum;
295 typedef [uuid(00000545-0000-0010-8000-00aa006d2ea4)] enum CompareEnum
297 adCompareLessThan = 0,
298 adCompareEqual = 1,
299 adCompareGreaterThan = 2,
300 adCompareNotEqual = 3,
301 adCompareNotComparable = 4
302 } CompareEnum;
304 typedef [uuid(00000523-0000-0010-8000-00aa006d2ea4)] enum IsolationLevelEnum
306 adXactUnspecified = -1,
307 adXactChaos = 16,
308 adXactReadUncommitted = 256,
309 adXactBrowse = 256,
310 adXactCursorStability = 4096,
311 adXactReadCommitted = 4096,
312 adXactRepeatableRead = 65536,
313 adXactSerializable = 1048576,
314 adXactIsolated = 1048576
315 } IsolationLevelEnum;
317 typedef [uuid(00000521-0000-0010-8000-00aa006d2ea4)] enum ConnectModeEnum
319 adModeUnknown = 0,
320 adModeRead = 1,
321 adModeWrite = 2,
322 adModeReadWrite = 3,
323 adModeShareDenyRead = 4,
324 adModeShareDenyWrite = 8,
325 adModeShareExclusive = 12,
326 adModeShareDenyNone = 16,
327 adModeRecursive = 4194304
328 } ConnectModeEnum;
330 typedef [uuid(00000533-0000-0010-8000-00aa006d2ea4)] enum SchemaEnum
332 adSchemaProviderSpecific = -1,
333 adSchemaAsserts = 0,
334 adSchemaCatalogs = 1,
335 adSchemaCharacterSets = 2,
336 adSchemaCollations = 3,
337 adSchemaColumns = 4,
338 adSchemaCheckConstraints = 5,
339 adSchemaConstraintColumnUsage = 6,
340 adSchemaConstraintTableUsage = 7,
341 adSchemaKeyColumnUsage = 8,
342 adSchemaReferentialContraints = 9,
343 adSchemaReferentialConstraints = 9,
344 adSchemaTableConstraints = 10,
345 adSchemaColumnsDomainUsage = 11,
346 adSchemaIndexes = 12,
347 adSchemaColumnPrivileges = 13,
348 adSchemaTablePrivileges = 14,
349 adSchemaUsagePrivileges = 15,
350 adSchemaProcedures = 16,
351 adSchemaSchemata = 17,
352 adSchemaSQLLanguages = 18,
353 adSchemaStatistics = 19,
354 adSchemaTables = 20,
355 adSchemaTranslations = 21,
356 adSchemaProviderTypes = 22,
357 adSchemaViews = 23,
358 adSchemaViewColumnUsage = 24,
359 adSchemaViewTableUsage = 25,
360 adSchemaProcedureParameters = 26,
361 adSchemaForeignKeys = 27,
362 adSchemaPrimaryKeys = 28,
363 adSchemaProcedureColumns = 29,
364 adSchemaDBInfoKeywords = 30,
365 adSchemaDBInfoLiterals = 31,
366 adSchemaCubes = 32,
367 adSchemaDimensions = 33,
368 adSchemaHierarchies = 34,
369 adSchemaLevels = 35,
370 adSchemaMeasures = 36,
371 adSchemaProperties = 37,
372 adSchemaMembers = 38,
373 adSchemaTrustees = 39,
374 adSchemaFunctions = 40,
375 adSchemaActions = 41,
376 adSchemaCommands = 42,
377 adSchemaSets = 43
378 } SchemaEnum;
380 typedef [uuid(00000530-0000-0010-8000-00aa006d2ea4)] enum EventStatusEnum
382 adStatusOK = 1,
383 adStatusErrorsOccurred = 2,
384 adStatusCantDeny = 3,
385 adStatusCancel = 4,
386 adStatusUnwantedEvent = 5
387 } EventStatusEnum;
389 typedef [uuid(0000052c-0000-0010-8000-00aa006d2ea4)] enum ParameterDirectionEnum
391 adParamUnknown = 0,
392 adParamInput = 1,
393 adParamOutput = 2,
394 adParamInputOutput = 3,
395 adParamReturnValue = 4
396 } ParameterDirectionEnum;
398 typedef [uuid(0000052e-0000-0010-8000-00aa006d2ea4)] enum CommandTypeEnum
400 adCmdUnspecified = -1,
401 adCmdUnknown = 8,
402 adCmdText = 1,
403 adCmdTable = 2,
404 adCmdStoredProc = 4,
405 adCmdFile = 256,
406 adCmdTableDirect = 512
407 } CommandTypeEnum;
409 typedef [uuid(00000532-0000-0010-8000-00aa006d2ea4)] enum ObjectStateEnum
411 adStateClosed = 0,
412 adStateOpen = 1,
413 adStateConnecting = 2,
414 adStateExecuting = 4,
415 adStateFetching = 8
416 } ObjectStateEnum;
418 typedef [uuid(00000573-0000-0010-8000-00aa006d2ea4)] enum MoveRecordOptionsEnum
420 adMoveUnspecified = -1,
421 adMoveOverWrite = 1,
422 adMoveDontUpdateLinks = 2,
423 adMoveAllowEmulation = 4
424 } MoveRecordOptionsEnum;
426 typedef [uuid(00000574-0000-0010-8000-00aa006d2ea4)] enum CopyRecordOptionsEnum
428 adCopyUnspecified = -1,
429 adCopyOverWrite = 1,
430 adCopyAllowEmulation = 4,
431 adCopyNonRecursive = 2
432 } CopyRecordOptionsEnum;
434 typedef [uuid(00000570-0000-0010-8000-00aa006d2ea4)] enum RecordCreateOptionsEnum
436 adCreateCollection = (int) 0x00002000,
437 adCreateStructDoc = (int) 0x80000000,
438 adCreateNonCollection = (int) 0x00000000,
439 adOpenIfExists = (int) 0x02000000,
440 adCreateOverwrite = (int) 0x04000000,
441 adFailIfNotExists = (int) -1
442 } RecordCreateOptionsEnum;
444 typedef [uuid(00000571-0000-0010-8000-00aa006d2ea4)] enum RecordOpenOptionsEnum
446 adOpenRecordUnspecified = -1,
447 adOpenOutput = 0x00800000,
448 adOpenAsync = 0x00001000,
449 adDelayFetchStream = 0x00004000,
450 adDelayFetchFields = 0x00008000,
451 adOpenExecuteCommand = 0x00010000
452 } RecordOpenOptionsEnum;
454 typedef [uuid(0000057d-0000-0010-8000-00aa006d2ea4)] enum RecordTypeEnum
456 adSimpleRecord = 0,
457 adCollectionRecord = 1,
458 adStructDoc = 2
459 } RecordTypeEnum;
461 typedef [uuid(00000576-0000-0010-8000-00aa006d2ea4)] enum StreamTypeEnum
463 adTypeBinary = 1,
464 adTypeText = 2
465 } StreamTypeEnum;
467 typedef [uuid(00000577-0000-0010-8000-00aa006d2ea4)] enum LineSeparatorEnum
469 adLF = 10,
470 adCR = 13,
471 adCRLF = -1
472 } LineSeparatorEnum;
474 typedef enum
476 adReadAll = -1,
477 adReadLine = -2
478 } StreamReadEnum;
480 typedef [uuid(0000057c-0000-0010-8000-00aa006d2ea4)] enum SaveOptionsEnum
482 adSaveCreateNotExist = 1,
483 adSaveCreateOverWrite = 2
484 } SaveOptionsEnum;
486 typedef [uuid(0000057a-0000-0010-8000-00aa006d2ea4)] enum StreamOpenOptionsEnum
488 adOpenStreamUnspecified = -1,
489 adOpenStreamAsync = 1,
490 adOpenStreamFromRecord = 4
491 } StreamOpenOptionsEnum;
493 typedef [uuid(0000057b-0000-0010-8000-00aa006d2ea4)] enum StreamWriteEnum
495 adWriteChar = 0,
496 adWriteLine = 1
497 } StreamWriteEnum;
499 typedef [uuid(00000531-0000-0010-8000-00aa006d2ea4)] enum EventReasonEnum
501 adRsnAddNew = 1,
502 adRsnDelete = 2,
503 adRsnUpdate = 3,
504 adRsnUndoUpdate = 4,
505 adRsnUndoAddNew = 5,
506 adRsnUndoDelete = 6,
507 adRsnRequery = 7,
508 adRsnResynch = 8,
509 adRsnClose = 9,
510 adRsnMove = 10,
511 adRsnFirstChange = 11,
512 adRsnMoveFirst = 12,
513 adRsnMoveNext = 13,
514 adRsnMovePrevious = 14,
515 adRsnMoveLast = 15
516 } EventReasonEnum;
518 typedef [uuid(0000051e-0000-0010-8000-00aa006d2ea4)] enum ExecuteOptionEnum
520 adOptionUnspecified = -1,
521 adAsyncExecute = 16,
522 adAsyncFetch = 32,
523 adAsyncFetchNonBlocking = 64,
524 adExecuteNoRecords = 128,
525 adExecuteStream = 1024,
526 [hidden] adExecuteRecord = 2048
527 } ExecuteOptionEnum;
529 typedef [uuid(00000541-0000-0010-8000-00aa006d2ea4)] enum ConnectOptionEnum
531 adConnectUnspecified = -1,
532 adAsyncConnect = 0x10
533 } ConnectOptionEnum;
536 uuid(00000503-0000-0010-8000-00aa006d2ea4),
537 odl,
538 dual,
539 nonextensible,
540 oleautomation
542 interface Property : IDispatch
544 [id(00000000), propget]
545 HRESULT Value(
546 [out, retval] VARIANT *val);
548 [id(00000000), propput]
549 HRESULT Value(
550 [in] VARIANT val);
552 [id(0x60020002), propget]
553 HRESULT Name(
554 [out, retval] BSTR *str);
556 [id(0x60020003), propget]
557 HRESULT Type(
558 [out, retval] DataTypeEnum *type);
560 [id(0x60020004), propget]
561 HRESULT Attributes(
562 [out, retval] LONG *attributes);
564 [id(0x60020004), propput]
565 HRESULT Attributes(
566 [in] LONG attributes);
570 uuid(00000512-0000-0010-8000-00aa006d2ea4),
571 odl,
572 dual,
573 nonextensible,
574 oleautomation
576 interface _Collection : IDispatch
578 [id(0x60020000), propget]
579 HRESULT Count(
580 [out, retval] LONG *count);
582 [id(0xfffffffc), restricted]
583 HRESULT _NewEnum(
584 [out, retval] IUnknown **object);
586 [id(0x60020002)]
587 HRESULT Refresh();
591 uuid(00000504-0000-0010-8000-00aa006d2ea4),
592 odl,
593 dual,
594 nonextensible,
595 oleautomation
597 interface Properties : _Collection
599 [id(00000000), propget]
600 HRESULT Item(
601 [in] VARIANT index,
602 [out, retval] Property **object);
606 uuid(00000534-0000-0010-8000-00aa006d2ea4),
607 odl,
608 dual,
609 nonextensible,
610 oleautomation
612 interface _ADO : IDispatch
614 [id(0x000001f4), propget]
615 HRESULT Properties(
616 [out, retval] Properties **object);
620 uuid(0000054c-0000-0010-8000-00aa006d2ea4),
621 odl,
622 dual,
623 nonextensible,
624 oleautomation,
625 hidden
627 interface Field20 : _ADO
629 [id(0x00000455), propget]
630 HRESULT ActualSize(
631 [out, retval] ADO_LONGPTR *size);
633 [id(0x0000040c), propget]
634 HRESULT Attributes(
635 [out, retval] LONG *attrs);
637 [id(0x0000044f), propget]
638 HRESULT DefinedSize(
639 [out, retval] ADO_LONGPTR *size);
641 [id(0x0000044c), propget]
642 HRESULT Name(
643 [out, retval] BSTR *str);
645 [id(0x0000044e), propget]
646 HRESULT Type(
647 [out, retval] DataTypeEnum *type);
649 [id(00000000), propget]
650 HRESULT Value(
651 [out, retval] VARIANT *val);
653 [id(00000000), propput]
654 HRESULT Value(
655 [in] VARIANT val);
657 [id(0x60030007), propget]
658 HRESULT Precision(
659 [out, retval] unsigned char *precision);
661 [id(0x60030008), propget]
662 HRESULT NumericScale(
663 [out, retval] unsigned char *scale);
665 [id(0x00000453)]
666 HRESULT AppendChunk(
667 [in] VARIANT data);
669 [id(0x00000454)]
670 HRESULT GetChunk(
671 [in] LONG length,
672 [out, retval] VARIANT *var);
674 [id(0x00000450), propget]
675 HRESULT OriginalValue(
676 [out, retval] VARIANT *val);
678 [id(0x00000451), propget]
679 HRESULT UnderlyingValue(
680 [out, retval] VARIANT *val);
682 [id(0x6003000d), propget]
683 HRESULT DataFormat(
684 [out, retval] IUnknown **format);
686 [id(0x6003000d), propputref]
687 HRESULT DataFormat(
688 [in] IUnknown *format);
690 [id(0x60030007), propput]
691 HRESULT Precision(
692 [in] unsigned char precision);
694 [id(0x60030008), propput]
695 HRESULT NumericScale(
696 [in] unsigned char scale);
698 [id(0x0000044e), propput]
699 HRESULT Type(
700 [in] DataTypeEnum type);
702 [id(0x0000044f), propput]
703 HRESULT DefinedSize(
704 [in] ADO_LONGPTR size);
706 [id(0x0000040c), propput]
707 HRESULT Attributes(
708 [in] LONG attrs);
712 uuid(00000569-0000-0010-8000-00aa006d2ea4),
713 odl,
714 dual,
715 nonextensible,
716 oleautomation
718 interface Field : Field20
720 [id(0x0000045c), propget]
721 HRESULT Status(
722 [out, retval] LONG *status);
726 uuid(00000506-0000-0010-8000-00aa006d2ea4),
727 odl,
728 dual,
729 nonextensible,
730 oleautomation
732 interface Fields15 : _Collection
734 [id(00000000), propget]
735 HRESULT Item(
736 [in] VARIANT index,
737 [out, retval] Field **object);
741 uuid(0000054d-0000-0010-8000-00aa006d2ea4),
742 odl,
743 dual,
744 nonextensible,
745 oleautomation
747 interface Fields20 : Fields15
749 [id(0x60030001)]
750 HRESULT _Append(
751 [in] BSTR name,
752 [in] DataTypeEnum type,
753 [in, defaultvalue(0)] ADO_LONGPTR size,
754 [in, defaultvalue(adFldUnspecified)] FieldAttributeEnum attr);
756 [id(0x60030002)]
757 HRESULT Delete(
758 [in] VARIANT index);
762 uuid(00000564-0000-0010-8000-00aa006d2ea4),
763 odl,
764 dual,
765 nonextensible,
766 oleautomation
768 interface Fields : Fields20
770 [id(0x60040001)]
771 HRESULT Append(
772 [in] BSTR name,
773 [in] DataTypeEnum type,
774 [in, defaultvalue(0)] ADO_LONGPTR size,
775 [in, defaultvalue(adFldUnspecified)] FieldAttributeEnum attr,
776 [in, optional] VARIANT value);
778 [id(0x60040002)]
779 HRESULT Update();
781 [id(0x60040003)]
782 HRESULT Resync(
783 [in, defaultvalue(adResyncAllValues)] ResyncEnum resync_values);
785 [id(0x60040004)]
786 HRESULT CancelUpdate();
790 uuid(0000050e-0000-0010-8000-00aa006d2ea4),
791 odl,
792 dual,
793 nonextensible,
794 oleautomation
796 interface Recordset15 : _ADO
798 [id(0x000003e8), propget]
799 HRESULT AbsolutePosition(
800 [out, retval] PositionEnum_Param *position);
802 [id(0x000003e8), propput]
803 HRESULT AbsolutePosition(
804 [in] PositionEnum_Param position);
806 [id(0x000003e9), propputref]
807 HRESULT ActiveConnection(
808 [in] IDispatch *connection);
810 [id(0x000003e9), propput]
811 HRESULT ActiveConnection(
812 [in] VARIANT connection);
814 [id(0x000003e9), propget]
815 HRESULT ActiveConnection(
816 [out, retval] VARIANT *connection);
818 [id(0x000003ea), propget]
819 HRESULT BOF(
820 [out, retval] VARIANT_BOOL *bof);
822 [id(0x000003eb), propget]
823 HRESULT Bookmark(
824 [out, retval] VARIANT *bookmark);
826 [id(0x000003eb), propput]
827 HRESULT Bookmark(
828 [in] VARIANT bookmark);
830 [id(0x000003ec), propget]
831 HRESULT CacheSize(
832 [out, retval] LONG *size);
834 [id(0x000003ec), propput]
835 HRESULT CacheSize(
836 [in] LONG size);
838 [id(0x000003ed), propget]
839 HRESULT CursorType(
840 [out, retval] CursorTypeEnum *cursor_type);
842 [id(0x000003ed), propput]
843 HRESULT CursorType(
844 [in] CursorTypeEnum cursor_type);
846 [id(0x000003ee), propget]
847 HRESULT EOF(
848 [out, retval] VARIANT_BOOL *eof);
850 [id(00000000), propget]
851 HRESULT Fields(
852 [out, retval] Fields **object);
854 [id(0x000003f0), propget]
855 HRESULT LockType(
856 [out, retval] LockTypeEnum *lock_type);
858 [id(0x000003f0), propput]
859 HRESULT LockType(
860 [in] LockTypeEnum lock_type);
862 [id(0x000003f1), propget]
863 HRESULT MaxRecords(
864 [out, retval] ADO_LONGPTR *max_records);
866 [id(0x000003f1), propput]
867 HRESULT MaxRecords(
868 [in] ADO_LONGPTR max_records);
870 [id(0x000003f2), propget]
871 HRESULT RecordCount(
872 [out, retval] ADO_LONGPTR *count);
874 [id(0x000003f3), propputref]
875 HRESULT Source(
876 [in] IDispatch *source);
878 [id(0x000003f3), propput]
879 HRESULT Source(
880 [in] BSTR source);
882 [id(0x000003f3), propget]
883 HRESULT Source(
884 [out, retval] VARIANT *source);
886 [id(0x000003f4)]
887 HRESULT AddNew(
888 [in, optional] VARIANT field_list,
889 [in, optional] VARIANT values);
891 [id(0x000003f5)]
892 HRESULT CancelUpdate();
894 [id(0x000003f6)]
895 HRESULT Close();
897 [id(0x000003f7)]
898 HRESULT Delete(
899 [in, defaultvalue(adAffectCurrent)] AffectEnum affect_records);
901 [id(0x000003f8)]
902 HRESULT GetRows(
903 [in, defaultvalue(-1)] LONG rows,
904 [in, optional] VARIANT start,
905 [in, optional] VARIANT fields,
906 [out, retval] VARIANT *var);
908 [id(0x000003f9)]
909 HRESULT Move(
910 [in] ADO_LONGPTR num_records,
911 [in, optional] VARIANT start);
913 [id(0x000003fa)]
914 HRESULT MoveNext();
916 [id(0x000003fb)]
917 HRESULT MovePrevious();
919 [id(0x000003fc)]
920 HRESULT MoveFirst();
922 [id(0x000003fd)]
923 HRESULT MoveLast();
925 [id(0x000003fe)]
926 HRESULT Open(
927 [in, optional] VARIANT source,
928 [in, optional] VARIANT active_connection,
929 [in, defaultvalue(adOpenUnspecified)] CursorTypeEnum cursor_type,
930 [in, defaultvalue(adLockUnspecified)] LockTypeEnum lock_type,
931 [in, defaultvalue(-1)] LONG options);
933 [id(0x000003ff)]
934 HRESULT Requery(
935 [in, defaultvalue(-1)] LONG options);
937 [id(0x60030022), hidden]
938 HRESULT _xResync(
939 [in, defaultvalue(adAffectAll)] AffectEnum affect_records);
941 [id(0x00000401)]
942 HRESULT Update(
943 [in, optional] VARIANT fields,
944 [in, optional] VARIANT values);
946 [id(0x00000417), propget]
947 HRESULT AbsolutePage(
948 [out, retval] PositionEnum_Param *position);
950 [id(0x00000417), propput]
951 HRESULT AbsolutePage(
952 [in] PositionEnum_Param position);
954 [id(0x00000402), propget]
955 HRESULT EditMode(
956 [out, retval] EditModeEnum *mode);
958 [id(0x00000406), propget]
959 HRESULT Filter(
960 [out, retval] VARIANT *criteria);
962 [id(0x00000406), propput]
963 HRESULT Filter(
964 [in] VARIANT criteria);
966 [id(0x0000041a), propget]
967 HRESULT PageCount(
968 [out, retval] ADO_LONGPTR *count);
970 [id(0x00000418), propget]
971 HRESULT PageSize(
972 [out, retval] LONG *size);
974 [id(0x00000418), propput]
975 HRESULT PageSize(
976 [in] LONG size);
978 [id(0x00000407), propget]
979 HRESULT Sort(
980 [out, retval] BSTR *criteria);
982 [id(0x00000407), propput]
983 HRESULT Sort(
984 [in] BSTR criteria);
986 [id(0x00000405), propget]
987 HRESULT Status(
988 [out, retval] LONG *status);
990 [id(0x0000041e), propget]
991 HRESULT State(
992 [out, retval] LONG *state);
994 [id(0x60030030), hidden]
995 HRESULT _xClone(
996 [out, retval] _Recordset **object);
998 [id(0x0000040b)]
999 HRESULT UpdateBatch(
1000 [in, defaultvalue(adAffectAll)] AffectEnum affect_records);
1002 [id(0x00000419)]
1003 HRESULT CancelBatch(
1004 [in, defaultvalue(adAffectAll)] AffectEnum affect_records);
1006 [id(0x0000041b), propget]
1007 HRESULT CursorLocation(
1008 [out, retval] CursorLocationEnum *cursor_loc);
1010 [id(0x0000041b), propput]
1011 HRESULT CursorLocation(
1012 [in] CursorLocationEnum cursor_loc);
1014 [id(0x0000041c)]
1015 HRESULT NextRecordset(
1016 [out, optional] VARIANT *records_affected,
1017 [out, retval] _Recordset **record_set);
1019 [id(0x0000040c)]
1020 HRESULT Supports(
1021 [in] CursorOptionEnum cursor_options,
1022 [out, retval] VARIANT_BOOL *ret);
1024 [id(0xfffffff8), propget, hidden]
1025 HRESULT Collect(
1026 [in] VARIANT index,
1027 [out, retval] VARIANT *var);
1029 [id(0xfffffff8), propput, hidden]
1030 HRESULT Collect(
1031 [in] VARIANT index,
1032 [in] VARIANT var);
1034 [id(0x0000041d), propget]
1035 HRESULT MarshalOptions(
1036 [out, retval] MarshalOptionsEnum *options);
1038 [id(0x0000041d), propput]
1039 HRESULT MarshalOptions(
1040 [in] MarshalOptionsEnum options);
1042 [id(0x00000422)]
1043 HRESULT Find(
1044 [in] BSTR criteria,
1045 [in, defaultvalue(0)] LONG skip_records,
1046 [in, defaultvalue(adSearchForward)] SearchDirectionEnum search_direction,
1047 [in, optional] VARIANT start);
1051 uuid(0000054f-0000-0010-8000-00aa006d2ea4),
1052 odl,
1053 dual,
1054 nonextensible,
1055 oleautomation
1057 interface Recordset20 : Recordset15
1059 [id(0x0000041f)]
1060 HRESULT Cancel();
1062 [id(0x00000420), propget]
1063 HRESULT DataSource(
1064 [out, retval] IUnknown **data_source);
1066 [id(0x00000420), propputref]
1067 HRESULT DataSource(
1068 [in] IUnknown *data_source);
1070 [hidden]
1071 HRESULT _xSave(
1072 [in, optional] BSTR filename,
1073 [in, defaultvalue(adPersistADTG)] PersistFormatEnum persist_format);
1075 [id(0x00000425), propget]
1076 HRESULT ActiveCommand(
1077 [out, retval] IDispatch **cmd);
1079 [id(0x00000427), propput]
1080 HRESULT StayInSync(
1081 [in] VARIANT_BOOL stay_in_sync);
1083 [id(0x00000427), propget]
1084 HRESULT StayInSync(
1085 [out, retval] VARIANT_BOOL *stay_in_sync);
1087 [id(0x00000426)]
1088 HRESULT GetString(
1089 [in, defaultvalue(adClipString)] StringFormatEnum string_format,
1090 [in, defaultvalue(-1)] LONG num_rows,
1091 [in, optional] BSTR column_delimiter,
1092 [in, optional] BSTR row_delimiter,
1093 [in, optional] BSTR null_expr,
1094 [out, retval] BSTR *ret_string);
1096 [id(0x00000428), propget]
1097 HRESULT DataMember(
1098 [out, retval] BSTR *data_member);
1100 [id(0x00000428), propput]
1101 HRESULT DataMember(
1102 [in] BSTR data_member);
1104 [id(0x00000429)]
1105 HRESULT CompareBookmarks(
1106 [in] VARIANT bookmark1,
1107 [in] VARIANT bookmark2,
1108 [out, retval] CompareEnum *compare);
1110 [id(0x0000040a)]
1111 HRESULT Clone(
1112 [in, defaultvalue(adLockUnspecified)] LockTypeEnum lock_type,
1113 [out, retval] _Recordset **object);
1115 [id(0x00000400)]
1116 HRESULT Resync(
1117 [in, defaultvalue(adAffectAll)] AffectEnum affect_records,
1118 [in, defaultvalue(adResyncAllValues)] ResyncEnum resync_values);
1122 uuid(00000555-0000-0010-8000-00aa006d2ea4),
1123 odl,
1124 dual,
1125 nonextensible,
1126 oleautomation
1128 interface Recordset21 : Recordset20
1130 [id(0x0000042a)]
1131 HRESULT Seek(
1132 [in] VARIANT key_values,
1133 [in, defaultvalue(adSeekFirstEQ)] SeekEnum seek_option);
1135 [id(0x0000042b), propput]
1136 HRESULT Index(
1137 [in] BSTR index);
1139 [id(0x0000042b), propget]
1140 HRESULT Index(
1141 [out, retval] BSTR *index);
1145 uuid(00000556-0000-0010-8000-00aa006d2ea4),
1146 odl,
1147 dual,
1148 nonextensible,
1149 oleautomation
1151 interface _Recordset : Recordset21
1153 [id(0x00000421)]
1154 HRESULT Save(
1155 [in, optional] VARIANT destination,
1156 [in, defaultvalue(adPersistADTG)] PersistFormatEnum persist_format);
1160 uuid(00000500-0000-0010-8000-00aa006d2ea4),
1161 odl,
1162 dual,
1163 nonextensible,
1164 oleautomation
1166 interface Error : IDispatch
1168 [id(0x60020000), propget]
1169 HRESULT Number(
1170 [out, retval] LONG *number);
1172 [id(0x60020001), propget]
1173 HRESULT Source(
1174 [out, retval] BSTR *str);
1176 [id(00000000), propget]
1177 HRESULT Description(
1178 [out, retval] BSTR *str);
1180 [id(0x60020003), propget]
1181 HRESULT HelpFile(
1182 [out, retval] BSTR *str);
1184 [id(0x60020004), propget]
1185 HRESULT HelpContext(
1186 [out, retval] LONG *ctx);
1188 [id(0x60020005), propget]
1189 HRESULT SQLState(
1190 [out, retval] BSTR *str);
1192 [id(0x60020006), propget]
1193 HRESULT NativeError(
1194 [out, retval] LONG *error);
1198 uuid(00000501-0000-0010-8000-00aa006d2ea4),
1199 odl,
1200 dual,
1201 nonextensible,
1202 oleautomation
1204 interface Errors : _Collection
1206 [id(00000000), propget]
1207 HRESULT Item(
1208 [in] VARIANT index,
1209 [out, retval] Error **object);
1211 [id(0x60030001)]
1212 HRESULT Clear();
1216 uuid(00000515-0000-0010-8000-00aa006d2ea4),
1217 odl,
1218 dual,
1219 oleautomation
1221 interface Connection15 : _ADO
1223 [id(00000000), propget]
1224 HRESULT ConnectionString(
1225 [out, retval] BSTR *str);
1227 [id(00000000), propput]
1228 HRESULT ConnectionString(
1229 [in] BSTR str);
1231 [id(0x00000002), propget]
1232 HRESULT CommandTimeout(
1233 [out, retval] LONG *timeout);
1235 [id(0x00000002), propput]
1236 HRESULT CommandTimeout(
1237 [in] LONG timeout);
1239 [id(0x00000003), propget]
1240 HRESULT ConnectionTimeout(
1241 [out, retval] LONG *timeout);
1243 [id(0x00000003), propput]
1244 HRESULT ConnectionTimeout(
1245 [in] LONG timeout);
1247 [id(0x00000004), propget]
1248 HRESULT Version(
1249 [out, retval] BSTR *str);
1251 [id(0x00000005)]
1252 HRESULT Close();
1254 [id(0x00000006)]
1255 HRESULT Execute(
1256 [in] BSTR command,
1257 [out, optional] VARIANT *records_affected,
1258 [in, defaultvalue(-1)] LONG options,
1259 [out, retval] _Recordset **record_set);
1261 [id(0x00000007)]
1262 HRESULT BeginTrans(
1263 [out, retval] LONG *transaction_level);
1265 [id(0x00000008)]
1266 HRESULT CommitTrans();
1268 [id(0x00000009)]
1269 HRESULT RollbackTrans();
1271 [id(0x0000000a)]
1272 HRESULT Open(
1273 [in, defaultvalue("")] BSTR connection_str,
1274 [in, defaultvalue("")] BSTR user_id,
1275 [in, defaultvalue("")] BSTR password,
1276 [in, defaultvalue(-1)] LONG options);
1278 [id(0x0000000b), propget]
1279 HRESULT Errors(
1280 [out, retval] Errors **object);
1282 [id(0x0000000c), propget]
1283 HRESULT DefaultDatabase(
1284 [out, retval] BSTR *str);
1286 [id(0x0000000c), propput]
1287 HRESULT DefaultDatabase(
1288 [in] BSTR str);
1290 [id(0x0000000d), propget]
1291 HRESULT IsolationLevel(
1292 [out, retval] IsolationLevelEnum *level);
1294 [id(0x0000000d), propput]
1295 HRESULT IsolationLevel(
1296 [in] IsolationLevelEnum level);
1298 [id(0x0000000e), propget]
1299 HRESULT Attributes(
1300 [out, retval] LONG *attr);
1302 [id(0x0000000e), propput]
1303 HRESULT Attributes(
1304 [in] LONG attr);
1306 [id(0x0000000f), propget]
1307 HRESULT CursorLocation(
1308 [out, retval] CursorLocationEnum *cursor_loc);
1310 [id(0x0000000f), propput]
1311 HRESULT CursorLocation(
1312 [in] CursorLocationEnum cursor_loc);
1314 [id(0x00000010), propget]
1315 HRESULT Mode(
1316 [out, retval] ConnectModeEnum *mode);
1318 [id(0x00000010), propput]
1319 HRESULT Mode(
1320 [in] ConnectModeEnum mode);
1322 [id(0x00000011), propget]
1323 HRESULT Provider(
1324 [out, retval] BSTR *str);
1326 [id(0x00000011), propput]
1327 HRESULT Provider(
1328 [in] BSTR str);
1330 [id(0x00000012), propget]
1331 HRESULT State(
1332 [out, retval] LONG *state);
1334 [id(0x00000013)]
1335 HRESULT OpenSchema(
1336 [in] SchemaEnum schema,
1337 [in, optional] VARIANT restrictions,
1338 [in, optional] VARIANT schema_id,
1339 [out, retval] _Recordset **record_set);
1343 uuid(00000550-0000-0010-8000-00aa006d2ea4),
1344 odl,
1345 dual,
1346 oleautomation
1348 interface _Connection : Connection15
1350 [id(0x00000015)]
1351 HRESULT Cancel();
1355 uuid(0000050c-0000-0010-8000-00aa006d2ea4),
1356 odl,
1357 dual,
1358 nonextensible,
1359 oleautomation
1361 interface _Parameter : _ADO
1363 [id(0x60030000), propget]
1364 HRESULT Name(
1365 [out, retval] BSTR *str);
1367 [id(0x60030000), propput]
1368 HRESULT Name(
1369 [in] BSTR str);
1371 [id(00000000), propget]
1372 HRESULT Value(
1373 [out, retval] VARIANT *val);
1375 [id(00000000), propput]
1376 HRESULT Value(
1377 [in] VARIANT val);
1379 [id(0x60030004), propget]
1380 HRESULT Type(
1381 [out, retval] DataTypeEnum *data_type);
1383 [id(0x60030004), propput]
1384 HRESULT Type(
1385 [in] DataTypeEnum data_type);
1387 [id(0x60030006), propput]
1388 HRESULT Direction(
1389 [in] ParameterDirectionEnum direction);
1391 [id(0x60030006), propget]
1392 HRESULT Direction(
1393 [out, retval] ParameterDirectionEnum *direction);
1395 [id(0x60030008), propput]
1396 HRESULT Precision(
1397 [in] unsigned char precision);
1399 [id(0x60030008), propget]
1400 HRESULT Precision(
1401 [out, retval] unsigned char *precision);
1403 [id(0x6003000a), propput]
1404 HRESULT NumericScale(
1405 [in] unsigned char scale);
1407 [id(0x6003000a), propget]
1408 HRESULT NumericScale(
1409 [out, retval] unsigned char *scale);
1411 [id(0x6003000c), propput]
1412 HRESULT Size(
1413 [in] ADO_LONGPTR size);
1415 [id(0x6003000c), propget]
1416 HRESULT Size(
1417 [out, retval] ADO_LONGPTR *size);
1419 [id(0x6003000e)]
1420 HRESULT AppendChunk(
1421 [in] VARIANT val);
1423 [id(0x6003000f), propget]
1424 HRESULT Attributes(
1425 [out, retval] LONG *attrs);
1427 [id(0x6003000f), propput]
1428 HRESULT Attributes(
1429 [in] LONG attrs);
1433 uuid(00000513-0000-0010-8000-00aa006d2ea4),
1434 odl,
1435 dual,
1436 nonextensible,
1437 oleautomation
1439 interface _DynaCollection : _Collection
1441 [id(0x60030000)]
1442 HRESULT Append(
1443 [in] IDispatch *object);
1445 [id(0x60030001)]
1446 HRESULT Delete(
1447 [in] VARIANT index);
1451 uuid(0000050d-0000-0010-8000-00aa006d2ea4),
1452 odl,
1453 dual,
1454 nonextensible,
1455 oleautomation
1457 interface Parameters : _DynaCollection
1459 [id(00000000), propget]
1460 HRESULT Item(
1461 [in] VARIANT index,
1462 [out, retval] _Parameter **object);
1466 uuid(00000508-0000-0010-8000-00aa006d2ea4),
1467 odl,
1468 dual,
1469 nonextensible,
1470 oleautomation
1472 interface Command15 : _ADO
1474 [id(0x60030000), propget]
1475 HRESULT ActiveConnection(
1476 [out, retval] _Connection **object);
1478 [id(0x60030000), propputref]
1479 HRESULT ActiveConnection(
1480 [in] _Connection *object);
1482 [id(0x60030000), propput]
1483 HRESULT ActiveConnection(
1484 [in] VARIANT object);
1486 [id(0x60030003), propget]
1487 HRESULT CommandText(
1488 [out, retval] BSTR *str);
1490 [id(0x60030003), propput]
1491 HRESULT CommandText(
1492 [in] BSTR str);
1494 [id(0x60030005), propget]
1495 HRESULT CommandTimeout(
1496 [out, retval] LONG *timeout);
1498 [id(0x60030005), propput]
1499 HRESULT CommandTimeout(
1500 [in] LONG timeout);
1502 [id(0x60030007), propget]
1503 HRESULT Prepared(
1504 [out, retval] VARIANT_BOOL *prepared);
1506 [id(0x60030007), propput]
1507 HRESULT Prepared(
1508 [in] VARIANT_BOOL prepared);
1510 [id(0x60030009)]
1511 HRESULT Execute(
1512 [out, optional] VARIANT *records_affected,
1513 [in, optional] VARIANT *parameters,
1514 [in, defaultvalue(-1)] LONG options,
1515 [out, retval] _Recordset **record_set);
1517 [id(0x6003000a)]
1518 HRESULT CreateParameter(
1519 [in, defaultvalue("")] BSTR name,
1520 [in, defaultvalue(adEmpty)] DataTypeEnum type,
1521 [in, defaultvalue(adParamInput)] ParameterDirectionEnum direction,
1522 [in, defaultvalue(0)] ADO_LONGPTR size,
1523 [in, optional] VARIANT value,
1524 [out, retval] _Parameter **parameter);
1526 [id(00000000), propget]
1527 HRESULT Parameters(
1528 [out, retval] Parameters **object);
1530 [id(0x6003000c), propput]
1531 HRESULT CommandType(
1532 [in] CommandTypeEnum cmd_type);
1534 [id(0x6003000c), propget]
1535 HRESULT CommandType(
1536 [out, retval] CommandTypeEnum *cmd_type);
1538 [id(0x6003000e), propget]
1539 HRESULT Name(
1540 [out, retval] BSTR *name);
1542 [id(0x6003000e), propput]
1543 HRESULT Name(
1544 [in] BSTR name);
1548 uuid(0000054e-0000-0010-8000-00aa006d2ea4),
1549 odl,
1550 dual,
1551 nonextensible,
1552 oleautomation
1554 interface Command25 : Command15
1556 [id(0x60030010), propget]
1557 HRESULT State(
1558 [out, retval] LONG *state);
1560 [id(0x60030011)]
1561 HRESULT Cancel();
1565 uuid(b08400bd-f9d1-4d02-b856-71d5dba123e9),
1566 odl,
1567 dual,
1568 nonextensible,
1569 oleautomation
1571 interface _Command : Command25
1573 [id(0x60030012), propputref]
1574 HRESULT CommandStream(
1575 [in] IUnknown *stream);
1577 [id(0x60030012), propget]
1578 HRESULT CommandStream(
1579 [out, retval] VARIANT *stream);
1581 [id(0x60030013), propput]
1582 HRESULT Dialect(
1583 [in] BSTR dialect);
1585 [id(0x60030013), propget]
1586 HRESULT Dialect(
1587 [out, retval] BSTR *dialect);
1589 [id(0x60030014), propput]
1590 HRESULT NamedParameters(
1591 [in] VARIANT_BOOL named_parameters);
1593 [id(0x60030014), propget]
1594 HRESULT NamedParameters(
1595 [out, retval] VARIANT_BOOL *named_parameters);
1599 uuid(00000402-0000-0010-8000-00aa006d2ea4),
1600 odl,
1601 hidden
1603 interface ConnectionEventsVt : IUnknown
1605 HRESULT InfoMessage(
1606 [in] Error *error,
1607 [in, out] EventStatusEnum *status,
1608 [in] _Connection *connection);
1610 HRESULT BeginTransComplete(
1611 [in] LONG TransactionLevel,
1612 [in] Error *error,
1613 [in, out] EventStatusEnum *status,
1614 [in] _Connection *connection);
1616 HRESULT CommitTransComplete(
1617 [in] Error *error,
1618 [in, out] EventStatusEnum *status,
1619 [in] _Connection *connection);
1621 HRESULT RollbackTransComplete(
1622 [in] Error *error,
1623 [in, out] EventStatusEnum *status,
1624 [in] _Connection *connection);
1626 HRESULT WillExecute(
1627 [in, out] BSTR *source,
1628 [in, out] CursorTypeEnum *cursor_type,
1629 [in, out] LockTypeEnum *lock_type,
1630 [in, out] LONG *options,
1631 [in, out] EventStatusEnum *status,
1632 [in] _Command *command,
1633 [in] _Recordset *record_set,
1634 [in] _Connection *connection);
1636 HRESULT ExecuteComplete(
1637 [in] LONG records_affected,
1638 [in] Error *error,
1639 [in, out] EventStatusEnum *status,
1640 [in] _Command *command,
1641 [in] _Recordset *record_set,
1642 [in] _Connection *connection);
1644 HRESULT WillConnect(
1645 [in, out] BSTR *string,
1646 [in, out] BSTR *userid,
1647 [in, out] BSTR *password,
1648 [in, out] LONG *options,
1649 [in, out] EventStatusEnum *status,
1650 [in] _Connection *connection);
1652 HRESULT ConnectComplete(
1653 [in] Error *error,
1654 [in, out] EventStatusEnum *status,
1655 [in] _Connection *connection);
1657 HRESULT Disconnect(
1658 [in, out] EventStatusEnum *status,
1659 [in] _Connection *connection);
1663 uuid(00000400-0000-0010-8000-00aa006d2ea4)
1665 dispinterface ConnectionEvents
1667 properties:
1668 methods:
1669 [id(00000000)]
1670 HRESULT InfoMessage(
1671 [in] Error *error,
1672 [in, out] EventStatusEnum *status,
1673 [in] _Connection *Connection);
1675 [id(0x00000001)]
1676 HRESULT BeginTransComplete(
1677 [in] LONG TransactionLevel,
1678 [in] Error *error,
1679 [in, out] EventStatusEnum *status,
1680 [in] _Connection *connection);
1682 [id(0x00000003)]
1683 HRESULT CommitTransComplete(
1684 [in] Error *error,
1685 [in, out] EventStatusEnum *status,
1686 [in] _Connection *connection);
1688 [id(0x00000002)]
1689 HRESULT RollbackTransComplete(
1690 [in] Error *error,
1691 [in, out] EventStatusEnum *status,
1692 [in] _Connection *connection);
1694 [id(0x00000004)]
1695 HRESULT WillExecute(
1696 [in, out] BSTR *source,
1697 [in, out] CursorTypeEnum *cursor_type,
1698 [in, out] LockTypeEnum *lock_type,
1699 [in, out] LONG *options,
1700 [in, out] EventStatusEnum *status,
1701 [in] _Command *command,
1702 [in] _Recordset *record_set,
1703 [in] _Connection *connection);
1705 [id(0x00000005)]
1706 HRESULT ExecuteComplete(
1707 [in] LONG records_affected,
1708 [in] Error *error,
1709 [in, out] EventStatusEnum *status,
1710 [in] _Command *command,
1711 [in] _Recordset *record_set,
1712 [in] _Connection *connection);
1714 [id(0x00000006)]
1715 HRESULT WillConnect(
1716 [in, out] BSTR *string,
1717 [in, out] BSTR *userid,
1718 [in, out] BSTR *password,
1719 [in, out] LONG *options,
1720 [in, out] EventStatusEnum *status,
1721 [in] _Connection *connection);
1723 [id(0x00000007)]
1724 HRESULT ConnectComplete(
1725 [in] Error *error,
1726 [in, out] EventStatusEnum *status,
1727 [in] _Connection *connection);
1729 [id(0x00000008)]
1730 HRESULT Disconnect(
1731 [in, out] EventStatusEnum *status,
1732 [in] _Connection *connection);
1736 uuid(00000562-0000-0010-8000-00aa006d2ea4),
1737 odl,
1738 dual,
1739 nonextensible,
1740 oleautomation
1742 interface _Record : _ADO
1744 [id(1), propget]
1745 HRESULT ActiveConnection(
1746 [out, retval] VARIANT *connection);
1748 [id(1), propput]
1749 HRESULT ActiveConnection(
1750 [in] BSTR connection);
1752 [id(1), propputref]
1753 HRESULT ActiveConnection(
1754 [in] _Connection *connection);
1756 [id(2), propget]
1757 HRESULT State(
1758 [out, retval] ObjectStateEnum *state);
1760 [id(3), propget]
1761 HRESULT Source(
1762 [out, retval] VARIANT *source);
1764 [id(3), propput]
1765 HRESULT Source(
1766 [in] BSTR source);
1768 [id(3), propputref]
1769 HRESULT Source(
1770 [in] IDispatch *source);
1772 [id(4), propget]
1773 HRESULT Mode(
1774 [out, retval] ConnectModeEnum *mode);
1776 [id(4), propput]
1777 HRESULT Mode(
1778 [in] ConnectModeEnum mode);
1780 [id(5), propget]
1781 HRESULT ParentURL(
1782 [out, retval] BSTR *parent_URL);
1784 [id(6)]
1785 HRESULT MoveRecord(
1786 [in, defaultvalue("")] BSTR source,
1787 [in, defaultvalue("")] BSTR Destination,
1788 [in, optional] BSTR UserName,
1789 [in, optional] BSTR Password,
1790 [in, defaultvalue(adMoveUnspecified)] MoveRecordOptionsEnum Options,
1791 [in, optional] VARIANT_BOOL Async,
1792 [out, retval] BSTR *pbstrNewURL);
1794 [id(7)]
1795 HRESULT CopyRecord(
1796 [in, defaultvalue("")] BSTR source,
1797 [in, defaultvalue("")] BSTR destination,
1798 [in, optional] BSTR username,
1799 [in, optional] BSTR password,
1800 [in, defaultvalue(adCopyUnspecified)] CopyRecordOptionsEnum options,
1801 [in, optional] VARIANT_BOOL async,
1802 [out, retval] BSTR *new_URL);
1804 [id(8)]
1805 HRESULT DeleteRecord(
1806 [in] BSTR source,
1807 [in, optional] VARIANT_BOOL async);
1809 [id(9)]
1810 HRESULT Open(
1811 [in, optional] VARIANT source,
1812 [in, optional] VARIANT active_connection,
1813 [in, optional] ConnectModeEnum mode,
1814 [in, defaultvalue(adFailIfNotExists)] RecordCreateOptionsEnum create_options,
1815 [in, defaultvalue(adOpenRecordUnspecified)] RecordOpenOptionsEnum options,
1816 [in, optional] BSTR username,
1817 [in, optional] BSTR password);
1819 [id(10)]
1820 HRESULT Close();
1822 [id(0), propget]
1823 HRESULT Fields(
1824 [out, retval] Fields **fields);
1826 [id(11), propget]
1827 HRESULT RecordType(
1828 [out, retval] RecordTypeEnum *type);
1830 [id(12)]
1831 HRESULT GetChildren(
1832 [out, retval] _Recordset **record_set);
1834 [id(13)]
1835 HRESULT Cancel();
1839 uuid(00000565-0000-0010-8000-00aa006d2ea4),
1840 odl,
1841 dual,
1842 nonextensible,
1843 oleautomation
1845 interface _Stream : IDispatch
1847 [id(1), propget]
1848 HRESULT Size(
1849 [out, retval] ADO_LONGPTR *size);
1851 [id(2), propget]
1852 HRESULT EOS(
1853 [out, retval] VARIANT_BOOL *eos);
1855 [id(3), propget]
1856 HRESULT Position(
1857 [out, retval] ADO_LONGPTR *position);
1859 [id(3), propput]
1860 HRESULT Position(
1861 [in] ADO_LONGPTR position);
1863 [id(4), propget]
1864 HRESULT Type(
1865 [out, retval] StreamTypeEnum *type);
1867 [id(4), propput]
1868 HRESULT Type(
1869 [in] StreamTypeEnum type);
1871 [id(5), propget]
1872 HRESULT LineSeparator(
1873 [out, retval] LineSeparatorEnum *separator);
1875 [id(5), propput]
1876 HRESULT LineSeparator(
1877 [in] LineSeparatorEnum separator);
1879 [id(6), propget]
1880 HRESULT State(
1881 [out, retval] ObjectStateEnum *state);
1883 [id(7), propget]
1884 HRESULT Mode(
1885 [out, retval] ConnectModeEnum *mode);
1887 [id(7), propput]
1888 HRESULT Mode(
1889 [in] ConnectModeEnum mode);
1891 [id(8), propget]
1892 HRESULT Charset(
1893 [out, retval] BSTR *charset);
1895 [id(8), propput]
1896 HRESULT Charset(
1897 [in] BSTR charset);
1899 [id(9)]
1900 HRESULT Read(
1901 [in, defaultvalue(adReadAll)] LONG num_bytes,
1902 [out, retval] VARIANT *val);
1904 [id(10)]
1905 HRESULT Open(
1906 [in, optional] VARIANT source,
1907 [in, defaultvalue(adModeUnknown)] ConnectModeEnum mode,
1908 [in, defaultvalue(adOpenStreamUnspecified)] StreamOpenOptionsEnum options,
1909 [in, optional] BSTR username,
1910 [in, optional] BSTR password);
1912 [id(11)]
1913 HRESULT Close(void);
1915 [id(12)]
1916 HRESULT SkipLine(void);
1918 [id(13)]
1919 HRESULT Write(
1920 [in] VARIANT buffer);
1922 [id(14)]
1923 HRESULT SetEOS(void);
1925 [id(15)]
1926 HRESULT CopyTo(
1927 [in] _Stream *dest,
1928 [in, defaultvalue(-1)] ADO_LONGPTR size);
1930 [id(16)]
1931 HRESULT Flush(void);
1933 [id(17)]
1934 HRESULT SaveToFile(
1935 [in] BSTR FileName,
1936 [in, defaultvalue(adSaveCreateNotExist)] SaveOptionsEnum options);
1938 [id(18)]
1939 HRESULT LoadFromFile(
1940 [in] BSTR filename);
1942 [id(19)]
1943 HRESULT ReadText(
1944 [in, defaultvalue(adReadAll)] LONG size,
1945 [out, retval] BSTR *str);
1947 [id(20)]
1948 HRESULT WriteText(
1949 [in] BSTR data,
1950 [in, defaultvalue(adWriteChar)] StreamWriteEnum options);
1952 [id(21)]
1953 HRESULT Cancel(void);
1957 uuid(00000266-0000-0010-8000-00aa006d2ea4)
1959 dispinterface RecordsetEvents
1961 properties:
1962 methods:
1963 [id(0x00000009)]
1964 HRESULT WillChangeField(
1965 [in] LONG count,
1966 [in] VARIANT fields,
1967 [in, out] EventStatusEnum *status,
1968 [in] _Recordset *record_set);
1970 [id(0x0000000a)]
1971 HRESULT FieldChangeComplete(
1972 [in] LONG count,
1973 [in] VARIANT fields,
1974 [in] Error *error,
1975 [in, out] EventStatusEnum *status,
1976 [in] _Recordset *record_set);
1978 [id(0x0000000b)]
1979 HRESULT WillChangeRecord(
1980 [in] EventReasonEnum reason,
1981 [in] LONG count,
1982 [in, out] EventStatusEnum *status,
1983 [in] _Recordset *record_set);
1985 [id(0x0000000c)]
1986 HRESULT RecordChangeComplete(
1987 [in] EventReasonEnum reason,
1988 [in] LONG count,
1989 [in] Error *error,
1990 [in, out] EventStatusEnum *status,
1991 [in] _Recordset *record_set);
1993 [id(0x0000000d)]
1994 HRESULT WillChangeRecordset(
1995 [in] EventReasonEnum reason,
1996 [in, out] EventStatusEnum *status,
1997 [in] _Recordset *record_set);
1999 [id(0x0000000e)]
2000 HRESULT RecordsetChangeComplete(
2001 [in] EventReasonEnum reason,
2002 [in] Error *error,
2003 [in, out] EventStatusEnum *status,
2004 [in] _Recordset *record_set);
2006 [id(0x0000000f)]
2007 HRESULT WillMove(
2008 [in] EventReasonEnum reason,
2009 [in, out] EventStatusEnum *status,
2010 [in] _Recordset *record_set);
2012 [id(0x00000010)]
2013 HRESULT MoveComplete(
2014 [in] EventReasonEnum reason,
2015 [in] Error *error,
2016 [in, out] EventStatusEnum *status,
2017 [in] _Recordset *record_set);
2019 [id(0x00000011)]
2020 HRESULT EndOfRecordset(
2021 [in, out] VARIANT_BOOL *more_data,
2022 [in, out] EventStatusEnum *status,
2023 [in] _Recordset *record_set);
2025 [id(0x00000012)]
2026 HRESULT FetchProgress(
2027 [in] LONG progress,
2028 [in] LONG max_progress,
2029 [in, out] EventStatusEnum *status,
2030 [in] _Recordset *record_set);
2032 [id(0x00000013)]
2033 HRESULT FetchComplete(
2034 [in] Error *error,
2035 [in, out] EventStatusEnum *status,
2036 [in] _Recordset *record_set);
2040 uuid(00000538-0000-0010-8000-00aa006d2ea4),
2041 odl,
2042 hidden
2044 interface ADODebugging : IUnknown
2046 HRESULT IsGlobalDebugMode(
2047 VARIANT_BOOL *debugging_on);
2049 HRESULT SetGlobalDebugMode(
2050 IUnknown *debugger,
2051 VARIANT_BOOL debugging_on);
2055 uuid(00000516-0000-0010-8000-00aa006d2ea4),
2056 odl,
2057 restricted
2059 interface ADOConnectionConstruction15 : IUnknown
2061 [propget]
2062 HRESULT DSO(
2063 [out, retval] IUnknown **dso);
2065 [propget]
2066 HRESULT Session(
2067 [out, retval] IUnknown **session);
2069 HRESULT WrapDSOandSession(
2070 [in] IUnknown *dso,
2071 [in] IUnknown *session);
2075 uuid(00000551-0000-0010-8000-00aa006d2ea4),
2076 odl,
2077 restricted
2079 interface ADOConnectionConstruction : ADOConnectionConstruction15
2084 uuid(00000517-0000-0010-8000-00aa006d2ea4),
2085 odl,
2086 restricted
2088 interface ADOCommandConstruction : IUnknown
2090 [propget]
2091 HRESULT OLEDBCommand(
2092 [out, retval] IUnknown **command);
2094 [propput]
2095 HRESULT OLEDBCommand(
2096 [in] IUnknown *command);
2100 uuid(00000283-0000-0010-8000-00aa006d2ea4),
2101 odl,
2102 restricted
2104 interface ADORecordsetConstruction : IDispatch
2106 [propget]
2107 HRESULT Rowset(
2108 [out, retval] IUnknown **row_set);
2110 [propput]
2111 HRESULT Rowset(
2112 [in] IUnknown *row_set);
2114 [propget]
2115 HRESULT Chapter(
2116 [out, retval] ADO_LONGPTR *chapter);
2118 [propput]
2119 HRESULT Chapter(
2120 [in] ADO_LONGPTR chapter);
2122 [propget]
2123 HRESULT RowPosition(
2124 [out, retval] IUnknown **row_pos);
2126 [propput]
2127 HRESULT RowPosition(
2128 [in] IUnknown *row_pos);
2132 uuid(2a75196c-d9eb-4129-b803-931327f72d5c),
2133 version(2.8)
2135 library ADODB
2137 importlib("stdole2.tlb");
2140 uuid(00000514-0000-0010-8000-00aa006d2ea4),
2142 coclass Connection
2144 [default] interface _Connection;
2145 [default, source] dispinterface ConnectionEvents;
2149 uuid(00000507-0000-0010-8000-00aa006d2ea4),
2151 coclass Command
2153 [default] interface _Command;
2157 uuid(00000535-0000-0010-8000-00aa006d2ea4),
2159 coclass Recordset
2161 [default] interface _Recordset;
2162 [default, source] dispinterface RecordsetEvents;
2166 uuid(0000050b-0000-0010-8000-00aa006d2ea4),
2168 coclass Parameter
2170 [default] interface _Parameter;
2174 uuid(00000560-0000-0010-8000-00aa006d2ea4),
2176 coclass Record
2178 [default] interface _Record;
2182 uuid(00000566-0000-0010-8000-00aa006d2ea4),
2184 coclass Stream
2186 [default] interface _Stream;