dinput8/tests: Fix inverted winetest_win_skip condition.
[wine.git] / include / msado15_backcompat.idl
blobfedaf557066ad1bf83a5b463c8f89156bd906ba9
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(0000052A-0000-0010-8000-00AA006D2EA4)] enum ErrorValueEnum
56 adErrInvalidArgument = 3001,
57 adErrOpeningFile = 3002,
58 adErrReadFile = 3003,
59 adErrWriteFile = 3004,
60 adErrNoCurrentRecord = 3021,
61 adErrIllegalOperation = 3219,
62 adErrCantChangeProvider = 3220,
63 adErrInTransaction = 3246,
64 adErrFeatureNotAvailable = 3251,
65 adErrItemNotFound = 3265,
66 adErrObjectInCollection = 3367,
67 adErrObjectNotSet = 3420,
68 adErrDataConversion = 3421,
69 adErrObjectClosed = 3704,
70 adErrObjectOpen = 3705,
71 adErrProviderNotFound = 3706,
72 adErrBoundToCommand = 3707,
73 adErrInvalidParamInfo = 3708,
74 adErrInvalidConnection = 3709,
75 adErrNotReentrant = 3710,
76 adErrStillExecuting = 3711,
77 adErrOperationCancelled = 3712,
78 adErrStillConnecting = 3713,
79 adErrInvalidTransaction = 3714,
80 adErrNotExecuting = 3715,
81 adErrUnsafeOperation = 3716,
82 adWrnSecurityDialog = 3717,
83 adWrnSecurityDialogHeader = 3718,
84 adErrIntegrityViolation = 3719,
85 adErrPermissionDenied = 3720,
86 adErrDataOverflow = 3721,
87 adErrSchemaViolation = 3722,
88 adErrSignMismatch = 3723,
89 adErrCantConvertvalue = 3724,
90 adErrCantCreate = 3725,
91 adErrColumnNotOnThisRow = 3726,
92 adErrURLDoesNotExist = 3727,
93 adErrTreePermissionDenied = 3728,
94 adErrInvalidURL = 3729,
95 adErrResourceLocked = 3730,
96 adErrResourceExists = 3731,
97 adErrCannotComplete = 3732,
98 adErrVolumeNotFound = 3733,
99 adErrOutOfSpace = 3734,
100 adErrResourceOutOfScope = 3735,
101 adErrUnavailable = 3736,
102 adErrURLNamedRowDoesNotExist = 3737,
103 adErrDelResOutOfScope = 3738,
104 adErrPropInvalidColumn = 3739,
105 adErrPropInvalidOption = 3740,
106 adErrPropInvalidValue = 3741,
107 adErrPropConflicting = 3742,
108 adErrPropNotAllSettable = 3743,
109 adErrPropNotSet = 3744,
110 adErrPropNotSettable = 3745,
111 adErrPropNotSupported = 3746,
112 adErrCatalogNotSet = 3747,
113 adErrCantChangeConnection = 3748,
114 adErrFieldsUpdateFailed = 3749,
115 adErrDenyNotSupported = 3750,
116 adErrDenyTypeNotSupported = 3751,
117 adErrProviderNotSpecified = 3753,
118 adErrConnectionStringTooLong = 3754
119 } ErrorValueEnum;
121 typedef [uuid(00000528-0000-0010-8000-00aa006d2ea4)] enum PositionEnum
123 adPosUnknown = -1,
124 adPosBOF = -2,
125 adPosEOF = -3
126 } PositionEnum;
128 typedef [uuid(a56187c5-d690-4037-ae32-a00edc376ac3), public] PositionEnum PositionEnum_Param;
130 typedef [uuid(0000051f-0000-0010-8000-00aa006d2ea4)] enum DataTypeEnum
132 adEmpty = 0,
133 adTinyInt = 16,
134 adSmallInt = 2,
135 adInteger = 3,
136 adBigInt = 20,
137 adUnsignedTinyInt = 17,
138 adUnsignedSmallInt = 18,
139 adUnsignedInt = 19,
140 adUnsignedBigInt = 21,
141 adSingle = 4,
142 adDouble = 5,
143 adCurrency = 6,
144 adDecimal = 14,
145 adNumeric = 131,
146 adBoolean = 11,
147 adError = 10,
148 adUserDefined = 132,
149 adVariant = 12,
150 adIDispatch = 9,
151 adIUnknown = 13,
152 adGUID = 72,
153 adDate = 7,
154 adDBDate = 133,
155 adDBTime = 134,
156 adDBTimeStamp = 135,
157 adBSTR = 8,
158 adChar = 129,
159 adVarChar = 200,
160 adLongVarChar = 201,
161 adWChar = 130,
162 adVarWChar = 202,
163 adLongVarWChar = 203,
164 adBinary = 128,
165 adVarBinary = 204,
166 adLongVarBinary = 205,
167 adChapter = 136,
168 adFileTime = 64,
169 adPropVariant = 138,
170 adVarNumeric = 139,
171 adArray = 0x2000
172 } DataTypeEnum;
174 typedef [uuid(00000548-0000-0010-8000-00aa006d2ea4)] enum PersistFormatEnum
176 adPersistADTG = 0,
177 adPersistXML = 1
178 } PersistFormatEnum;
180 typedef [uuid(00000552-0000-0010-8000-00aa006d2ea4)] enum SeekEnum
182 adSeekFirstEQ = 1,
183 adSeekLastEQ = 2,
184 adSeekAfterEQ = 4,
185 adSeekAfter = 8,
186 adSeekBeforeEQ = 16,
187 adSeekBefore = 32
188 } SeekEnum;
190 typedef [uuid(0000051b-0000-0010-8000-00aa006d2ea4)] enum CursorTypeEnum
192 adOpenUnspecified = -1,
193 adOpenForwardOnly = 0,
194 adOpenKeyset = 1,
195 adOpenDynamic = 2,
196 adOpenStatic = 3
197 } CursorTypeEnum;
199 typedef [uuid(00000525-0000-0010-8000-00aa006d2ea4)] enum FieldAttributeEnum
201 adFldUnspecified = -1,
202 adFldMayDefer = 0x00000002,
203 adFldUpdatable = 0x00000004,
204 adFldUnknownUpdatable = 0x00000008,
205 adFldFixed = 0x00000010,
206 adFldIsNullable = 0x00000020,
207 adFldMayBeNull = 0x00000040,
208 adFldLong = 0x00000080,
209 adFldRowID = 0x00000100,
210 adFldRowVersion = 0x00000200,
211 adFldCacheDeferred = 0x00001000,
212 adFldIsChapter = 0x00002000,
213 adFldNegativeScale = 0x00004000,
214 adFldKeyColumn = 0x00008000,
215 adFldIsRowURL = 0x00010000,
216 adFldIsDefaultStream = 0x00020000,
217 adFldIsCollection = 0x00040000
218 } FieldAttributeEnum;
220 typedef [uuid(00000544-0000-0010-8000-00aa006d2ea4)] enum ResyncEnum
222 adResyncUnderlyingValues = 1,
223 adResyncAllValues = 2
224 } ResyncEnum;
226 typedef [uuid(0000051d-0000-0010-8000-00aa006d2ea4)] enum LockTypeEnum
228 adLockUnspecified = -1,
229 adLockReadOnly = 1,
230 adLockPessimistic = 2,
231 adLockOptimistic = 3,
232 adLockBatchOptimistic = 4
233 } LockTypeEnum;
235 typedef [uuid(00000543-0000-0010-8000-00aa006d2ea4)] enum AffectEnum
237 adAffectCurrent = 1,
238 adAffectGroup = 2,
239 adAffectAll = 3,
240 adAffectAllChapters = 4
241 } AffectEnum;
243 typedef [uuid(00000526-0000-0010-8000-00aa006d2ea4)] enum EditModeEnum
245 adEditNone = 0,
246 adEditInProgress = 1,
247 adEditAdd = 2,
248 adEditDelete = 4
249 } EditModeEnum;
251 typedef [uuid(0000052f-0000-0010-8000-00aa006d2ea4)] enum CursorLocationEnum
253 adUseNone = 1,
254 adUseServer = 2,
255 adUseClient = 3,
256 adUseClientBatch = 3
257 } CursorLocationEnum;
259 typedef [uuid(0000051c-0000-0010-8000-00aa006d2ea4)] enum CursorOptionEnum
261 adHoldRecords = 256,
262 adMovePrevious = 512,
263 adBookmark = 8192,
264 adApproxPosition = 16384,
265 adUpdateBatch = 65536,
266 adResync = 131072,
267 adNotify = 262144,
268 adFind = 524288,
269 adSeek = 4194304,
270 adIndex = 8388608,
271 adAddNew = 16778240,
272 adDelete = 16779264,
273 adUpdate = 16809984
274 } CursorOptionEnum;
276 typedef [uuid(00000540-0000-0010-8000-00aa006d2ea4)] enum MarshalOptionsEnum
278 adMarshalAll = 0,
279 adMarshalModifiedOnly = 1
280 } MarshalOptionsEnum;
282 typedef [uuid(00000547-0000-0010-8000-00aa006d2ea4)] enum SearchDirectionEnum
284 adSearchForward = 1,
285 adSearchBackward = -1
286 } SearchDirectionEnum;
288 typedef [uuid(00000549-0000-0010-8000-00aa006d2ea4)] enum StringFormatEnum
290 adClipString = 2
291 } StringFormatEnum;
293 typedef [uuid(00000545-0000-0010-8000-00aa006d2ea4)] enum CompareEnum
295 adCompareLessThan = 0,
296 adCompareEqual = 1,
297 adCompareGreaterThan = 2,
298 adCompareNotEqual = 3,
299 adCompareNotComparable = 4
300 } CompareEnum;
302 typedef [uuid(00000523-0000-0010-8000-00aa006d2ea4)] enum IsolationLevelEnum
304 adXactUnspecified = -1,
305 adXactChaos = 16,
306 adXactReadUncommitted = 256,
307 adXactBrowse = 256,
308 adXactCursorStability = 4096,
309 adXactReadCommitted = 4096,
310 adXactRepeatableRead = 65536,
311 adXactSerializable = 1048576,
312 adXactIsolated = 1048576
313 } IsolationLevelEnum;
315 typedef [uuid(00000521-0000-0010-8000-00aa006d2ea4)] enum ConnectModeEnum
317 adModeUnknown = 0,
318 adModeRead = 1,
319 adModeWrite = 2,
320 adModeReadWrite = 3,
321 adModeShareDenyRead = 4,
322 adModeShareDenyWrite = 8,
323 adModeShareExclusive = 12,
324 adModeShareDenyNone = 16,
325 adModeRecursive = 4194304
326 } ConnectModeEnum;
328 typedef [uuid(00000533-0000-0010-8000-00aa006d2ea4)] enum SchemaEnum
330 adSchemaProviderSpecific = -1,
331 adSchemaAsserts = 0,
332 adSchemaCatalogs = 1,
333 adSchemaCharacterSets = 2,
334 adSchemaCollations = 3,
335 adSchemaColumns = 4,
336 adSchemaCheckConstraints = 5,
337 adSchemaConstraintColumnUsage = 6,
338 adSchemaConstraintTableUsage = 7,
339 adSchemaKeyColumnUsage = 8,
340 adSchemaReferentialContraints = 9,
341 adSchemaReferentialConstraints = 9,
342 adSchemaTableConstraints = 10,
343 adSchemaColumnsDomainUsage = 11,
344 adSchemaIndexes = 12,
345 adSchemaColumnPrivileges = 13,
346 adSchemaTablePrivileges = 14,
347 adSchemaUsagePrivileges = 15,
348 adSchemaProcedures = 16,
349 adSchemaSchemata = 17,
350 adSchemaSQLLanguages = 18,
351 adSchemaStatistics = 19,
352 adSchemaTables = 20,
353 adSchemaTranslations = 21,
354 adSchemaProviderTypes = 22,
355 adSchemaViews = 23,
356 adSchemaViewColumnUsage = 24,
357 adSchemaViewTableUsage = 25,
358 adSchemaProcedureParameters = 26,
359 adSchemaForeignKeys = 27,
360 adSchemaPrimaryKeys = 28,
361 adSchemaProcedureColumns = 29,
362 adSchemaDBInfoKeywords = 30,
363 adSchemaDBInfoLiterals = 31,
364 adSchemaCubes = 32,
365 adSchemaDimensions = 33,
366 adSchemaHierarchies = 34,
367 adSchemaLevels = 35,
368 adSchemaMeasures = 36,
369 adSchemaProperties = 37,
370 adSchemaMembers = 38,
371 adSchemaTrustees = 39,
372 adSchemaFunctions = 40,
373 adSchemaActions = 41,
374 adSchemaCommands = 42,
375 adSchemaSets = 43
376 } SchemaEnum;
378 typedef [uuid(00000530-0000-0010-8000-00aa006d2ea4)] enum EventStatusEnum
380 adStatusOK = 1,
381 adStatusErrorsOccurred = 2,
382 adStatusCantDeny = 3,
383 adStatusCancel = 4,
384 adStatusUnwantedEvent = 5
385 } EventStatusEnum;
387 typedef [uuid(0000052c-0000-0010-8000-00aa006d2ea4)] enum ParameterDirectionEnum
389 adParamUnknown = 0,
390 adParamInput = 1,
391 adParamOutput = 2,
392 adParamInputOutput = 3,
393 adParamReturnValue = 4
394 } ParameterDirectionEnum;
396 typedef [uuid(0000052e-0000-0010-8000-00aa006d2ea4)] enum CommandTypeEnum
398 adCmdUnspecified = -1,
399 adCmdUnknown = 8,
400 adCmdText = 1,
401 adCmdTable = 2,
402 adCmdStoredProc = 4,
403 adCmdFile = 256,
404 adCmdTableDirect = 512
405 } CommandTypeEnum;
407 typedef [uuid(00000532-0000-0010-8000-00aa006d2ea4)] enum ObjectStateEnum
409 adStateClosed = 0,
410 adStateOpen = 1,
411 adStateConnecting = 2,
412 adStateExecuting = 4,
413 adStateFetching = 8
414 } ObjectStateEnum;
416 typedef [uuid(00000573-0000-0010-8000-00aa006d2ea4)] enum MoveRecordOptionsEnum
418 adMoveUnspecified = -1,
419 adMoveOverWrite = 1,
420 adMoveDontUpdateLinks = 2,
421 adMoveAllowEmulation = 4
422 } MoveRecordOptionsEnum;
424 typedef [uuid(00000574-0000-0010-8000-00aa006d2ea4)] enum CopyRecordOptionsEnum
426 adCopyUnspecified = -1,
427 adCopyOverWrite = 1,
428 adCopyAllowEmulation = 4,
429 adCopyNonRecursive = 2
430 } CopyRecordOptionsEnum;
432 typedef [uuid(00000570-0000-0010-8000-00aa006d2ea4)] enum RecordCreateOptionsEnum
434 adCreateCollection = (int) 0x00002000,
435 adCreateStructDoc = (int) 0x80000000,
436 adCreateNonCollection = (int) 0x00000000,
437 adOpenIfExists = (int) 0x02000000,
438 adCreateOverwrite = (int) 0x04000000,
439 adFailIfNotExists = (int) -1
440 } RecordCreateOptionsEnum;
442 typedef [uuid(00000571-0000-0010-8000-00aa006d2ea4)] enum RecordOpenOptionsEnum
444 adOpenRecordUnspecified = -1,
445 adOpenOutput = 0x00800000,
446 adOpenAsync = 0x00001000,
447 adDelayFetchStream = 0x00004000,
448 adDelayFetchFields = 0x00008000,
449 adOpenExecuteCommand = 0x00010000
450 } RecordOpenOptionsEnum;
452 typedef [uuid(0000057d-0000-0010-8000-00aa006d2ea4)] enum RecordTypeEnum
454 adSimpleRecord = 0,
455 adCollectionRecord = 1,
456 adStructDoc = 2
457 } RecordTypeEnum;
459 typedef [uuid(00000576-0000-0010-8000-00aa006d2ea4)] enum StreamTypeEnum
461 adTypeBinary = 1,
462 adTypeText = 2
463 } StreamTypeEnum;
465 typedef [uuid(00000577-0000-0010-8000-00aa006d2ea4)] enum LineSeparatorEnum
467 adLF = 10,
468 adCR = 13,
469 adCRLF = -1
470 } LineSeparatorEnum;
472 typedef enum
474 adReadAll = -1,
475 adReadLine = -2
476 } StreamReadEnum;
478 typedef [uuid(0000057c-0000-0010-8000-00aa006d2ea4)] enum SaveOptionsEnum
480 adSaveCreateNotExist = 1,
481 adSaveCreateOverWrite = 2
482 } SaveOptionsEnum;
484 typedef [uuid(0000057a-0000-0010-8000-00aa006d2ea4)] enum StreamOpenOptionsEnum
486 adOpenStreamUnspecified = -1,
487 adOpenStreamAsync = 1,
488 adOpenStreamFromRecord = 4
489 } StreamOpenOptionsEnum;
491 typedef [uuid(0000057b-0000-0010-8000-00aa006d2ea4)] enum StreamWriteEnum
493 adWriteChar = 0,
494 adWriteLine = 1
495 } StreamWriteEnum;
497 typedef [uuid(00000531-0000-0010-8000-00aa006d2ea4)] enum EventReasonEnum
499 adRsnAddNew = 1,
500 adRsnDelete = 2,
501 adRsnUpdate = 3,
502 adRsnUndoUpdate = 4,
503 adRsnUndoAddNew = 5,
504 adRsnUndoDelete = 6,
505 adRsnRequery = 7,
506 adRsnResynch = 8,
507 adRsnClose = 9,
508 adRsnMove = 10,
509 adRsnFirstChange = 11,
510 adRsnMoveFirst = 12,
511 adRsnMoveNext = 13,
512 adRsnMovePrevious = 14,
513 adRsnMoveLast = 15
514 } EventReasonEnum;
516 typedef [uuid(0000051e-0000-0010-8000-00aa006d2ea4)] enum ExecuteOptionEnum
518 adOptionUnspecified = -1,
519 adAsyncExecute = 16,
520 adAsyncFetch = 32,
521 adAsyncFetchNonBlocking = 64,
522 adExecuteNoRecords = 128,
523 adExecuteStream = 1024,
524 [hidden] adExecuteRecord = 2048
525 } ExecuteOptionEnum;
527 typedef [uuid(00000541-0000-0010-8000-00aa006d2ea4)] enum ConnectOptionEnum
529 adConnectUnspecified = -1,
530 adAsyncConnect = 0x10
531 } ConnectOptionEnum;
534 uuid(00000503-0000-0010-8000-00aa006d2ea4),
535 odl,
536 dual,
537 nonextensible,
538 oleautomation
540 interface Property : IDispatch
542 [id(00000000), propget]
543 HRESULT Value(
544 [out, retval] VARIANT *val);
546 [id(00000000), propput]
547 HRESULT Value(
548 [in] VARIANT val);
550 [id(0x60020002), propget]
551 HRESULT Name(
552 [out, retval] BSTR *str);
554 [id(0x60020003), propget]
555 HRESULT Type(
556 [out, retval] DataTypeEnum *type);
558 [id(0x60020004), propget]
559 HRESULT Attributes(
560 [out, retval] LONG *attributes);
562 [id(0x60020004), propput]
563 HRESULT Attributes(
564 [in] LONG attributes);
568 uuid(00000512-0000-0010-8000-00aa006d2ea4),
569 odl,
570 dual,
571 nonextensible,
572 oleautomation
574 interface _Collection : IDispatch
576 [id(0x60020000), propget]
577 HRESULT Count(
578 [out, retval] LONG *count);
580 [id(0xfffffffc), restricted]
581 HRESULT _NewEnum(
582 [out, retval] IUnknown **object);
584 [id(0x60020002)]
585 HRESULT Refresh();
589 uuid(00000504-0000-0010-8000-00aa006d2ea4),
590 odl,
591 dual,
592 nonextensible,
593 oleautomation
595 interface Properties : _Collection
597 [id(00000000), propget]
598 HRESULT Item(
599 [in] VARIANT index,
600 [out, retval] Property **object);
604 uuid(00000534-0000-0010-8000-00aa006d2ea4),
605 odl,
606 dual,
607 nonextensible,
608 oleautomation
610 interface _ADO : IDispatch
612 [id(0x000001f4), propget]
613 HRESULT Properties(
614 [out, retval] Properties **object);
618 uuid(0000054c-0000-0010-8000-00aa006d2ea4),
619 odl,
620 dual,
621 nonextensible,
622 oleautomation,
623 hidden
625 interface Field20 : _ADO
627 [id(0x00000455), propget]
628 HRESULT ActualSize(
629 [out, retval] LONG *size);
631 [id(0x0000040c), propget]
632 HRESULT Attributes(
633 [out, retval] LONG *attrs);
635 [id(0x0000044f), propget]
636 HRESULT DefinedSize(
637 [out, retval] LONG *size);
639 [id(0x0000044c), propget]
640 HRESULT Name(
641 [out, retval] BSTR *str);
643 [id(0x0000044e), propget]
644 HRESULT Type(
645 [out, retval] DataTypeEnum *type);
647 [id(00000000), propget]
648 HRESULT Value(
649 [out, retval] VARIANT *val);
651 [id(00000000), propput]
652 HRESULT Value(
653 [in] VARIANT val);
655 [id(0x60030007), propget]
656 HRESULT Precision(
657 [out, retval] unsigned char *precision);
659 [id(0x60030008), propget]
660 HRESULT NumericScale(
661 [out, retval] unsigned char *scale);
663 [id(0x00000453)]
664 HRESULT AppendChunk(
665 [in] VARIANT data);
667 [id(0x00000454)]
668 HRESULT GetChunk(
669 [in] LONG length,
670 [out, retval] VARIANT *var);
672 [id(0x00000450), propget]
673 HRESULT OriginalValue(
674 [out, retval] VARIANT *val);
676 [id(0x00000451), propget]
677 HRESULT UnderlyingValue(
678 [out, retval] VARIANT *val);
680 [id(0x6003000d), propget]
681 HRESULT DataFormat(
682 [out, retval] IUnknown **format);
684 [id(0x6003000d), propputref]
685 HRESULT DataFormat(
686 [in] IUnknown *format);
688 [id(0x60030007), propput]
689 HRESULT Precision(
690 [in] unsigned char precision);
692 [id(0x60030008), propput]
693 HRESULT NumericScale(
694 [in] unsigned char scale);
696 [id(0x0000044e), propput]
697 HRESULT Type(
698 [in] DataTypeEnum type);
700 [id(0x0000044f), propput]
701 HRESULT DefinedSize(
702 [in] LONG size);
704 [id(0x0000040c), propput]
705 HRESULT Attributes(
706 [in] LONG attrs);
710 uuid(00000569-0000-0010-8000-00aa006d2ea4),
711 odl,
712 dual,
713 nonextensible,
714 oleautomation
716 interface Field : Field20
718 [id(0x0000045c), propget]
719 HRESULT Status(
720 [out, retval] LONG *status);
724 uuid(00000506-0000-0010-8000-00aa006d2ea4),
725 odl,
726 dual,
727 nonextensible,
728 oleautomation
730 interface Fields15 : _Collection
732 [id(00000000), propget]
733 HRESULT Item(
734 [in] VARIANT index,
735 [out, retval] Field **object);
739 uuid(0000054d-0000-0010-8000-00aa006d2ea4),
740 odl,
741 dual,
742 nonextensible,
743 oleautomation
745 interface Fields20 : Fields15
747 [id(0x60030001)]
748 HRESULT _Append(
749 [in] BSTR name,
750 [in] DataTypeEnum type,
751 [in, defaultvalue(0)] LONG size,
752 [in, defaultvalue(adFldUnspecified)] FieldAttributeEnum attr);
754 [id(0x60030002)]
755 HRESULT Delete(
756 [in] VARIANT index);
760 uuid(00000564-0000-0010-8000-00aa006d2ea4),
761 odl,
762 dual,
763 nonextensible,
764 oleautomation
766 interface Fields : Fields20
768 [id(0x60040001)]
769 HRESULT Append(
770 [in] BSTR name,
771 [in] DataTypeEnum type,
772 [in, defaultvalue(0)] LONG size,
773 [in, defaultvalue(adFldUnspecified)] FieldAttributeEnum attr,
774 [in, optional] VARIANT value);
776 [id(0x60040002)]
777 HRESULT Update();
779 [id(0x60040003)]
780 HRESULT Resync(
781 [in, defaultvalue(adResyncAllValues)] ResyncEnum resync_values);
783 [id(0x60040004)]
784 HRESULT CancelUpdate();
788 uuid(0000050e-0000-0010-8000-00aa006d2ea4),
789 odl,
790 dual,
791 nonextensible,
792 oleautomation
794 interface Recordset15 : _ADO
796 [id(0x000003e8), propget]
797 HRESULT AbsolutePosition(
798 [out, retval] PositionEnum_Param *position);
800 [id(0x000003e8), propput]
801 HRESULT AbsolutePosition(
802 [in] PositionEnum_Param position);
804 [id(0x000003e9), propputref]
805 HRESULT ActiveConnection(
806 [in] IDispatch *connection);
808 [id(0x000003e9), propput]
809 HRESULT ActiveConnection(
810 [in] VARIANT connection);
812 [id(0x000003e9), propget]
813 HRESULT ActiveConnection(
814 [out, retval] VARIANT *connection);
816 [id(0x000003ea), propget]
817 HRESULT BOF(
818 [out, retval] VARIANT_BOOL *bof);
820 [id(0x000003eb), propget]
821 HRESULT Bookmark(
822 [out, retval] VARIANT *bookmark);
824 [id(0x000003eb), propput]
825 HRESULT Bookmark(
826 [in] VARIANT bookmark);
828 [id(0x000003ec), propget]
829 HRESULT CacheSize(
830 [out, retval] LONG *size);
832 [id(0x000003ec), propput]
833 HRESULT CacheSize(
834 [in] LONG size);
836 [id(0x000003ed), propget]
837 HRESULT CursorType(
838 [out, retval] CursorTypeEnum *cursor_type);
840 [id(0x000003ed), propput]
841 HRESULT CursorType(
842 [in] CursorTypeEnum cursor_type);
844 [id(0x000003ee), propget]
845 HRESULT EOF(
846 [out, retval] VARIANT_BOOL *eof);
848 [id(00000000), propget]
849 HRESULT Fields(
850 [out, retval] Fields **object);
852 [id(0x000003f0), propget]
853 HRESULT LockType(
854 [out, retval] LockTypeEnum *lock_type);
856 [id(0x000003f0), propput]
857 HRESULT LockType(
858 [in] LockTypeEnum lock_type);
860 [id(0x000003f1), propget]
861 HRESULT MaxRecords(
862 [out, retval] LONG *max_records);
864 [id(0x000003f1), propput]
865 HRESULT MaxRecords(
866 [in] LONG max_records);
868 [id(0x000003f2), propget]
869 HRESULT RecordCount(
870 [out, retval] LONG *count);
872 [id(0x000003f3), propputref]
873 HRESULT Source(
874 [in] IDispatch *source);
876 [id(0x000003f3), propput]
877 HRESULT Source(
878 [in] BSTR source);
880 [id(0x000003f3), propget]
881 HRESULT Source(
882 [out, retval] VARIANT *source);
884 [id(0x000003f4)]
885 HRESULT AddNew(
886 [in, optional] VARIANT field_list,
887 [in, optional] VARIANT values);
889 [id(0x000003f5)]
890 HRESULT CancelUpdate();
892 [id(0x000003f6)]
893 HRESULT Close();
895 [id(0x000003f7)]
896 HRESULT Delete(
897 [in, defaultvalue(adAffectCurrent)] AffectEnum affect_records);
899 [id(0x000003f8)]
900 HRESULT GetRows(
901 [in, defaultvalue(-1)] LONG rows,
902 [in, optional] VARIANT start,
903 [in, optional] VARIANT fields,
904 [out, retval] VARIANT *var);
906 [id(0x000003f9)]
907 HRESULT Move(
908 [in] LONG num_records,
909 [in, optional] VARIANT start);
911 [id(0x000003fa)]
912 HRESULT MoveNext();
914 [id(0x000003fb)]
915 HRESULT MovePrevious();
917 [id(0x000003fc)]
918 HRESULT MoveFirst();
920 [id(0x000003fd)]
921 HRESULT MoveLast();
923 [id(0x000003fe)]
924 HRESULT Open(
925 [in, optional] VARIANT source,
926 [in, optional] VARIANT active_connection,
927 [in, defaultvalue(adOpenUnspecified)] CursorTypeEnum cursor_type,
928 [in, defaultvalue(adLockUnspecified)] LockTypeEnum lock_type,
929 [in, defaultvalue(-1)] LONG options);
931 [id(0x000003ff)]
932 HRESULT Requery(
933 [in, defaultvalue(-1)] LONG options);
935 [id(0x60030022), hidden]
936 HRESULT _xResync(
937 [in, defaultvalue(adAffectAll)] AffectEnum affect_records);
939 [id(0x00000401)]
940 HRESULT Update(
941 [in, optional] VARIANT fields,
942 [in, optional] VARIANT values);
944 [id(0x00000417), propget]
945 HRESULT AbsolutePage(
946 [out, retval] PositionEnum_Param *position);
948 [id(0x00000417), propput]
949 HRESULT AbsolutePage(
950 [in] PositionEnum_Param position);
952 [id(0x00000402), propget]
953 HRESULT EditMode(
954 [out, retval] EditModeEnum *mode);
956 [id(0x00000406), propget]
957 HRESULT Filter(
958 [out, retval] VARIANT *criteria);
960 [id(0x00000406), propput]
961 HRESULT Filter(
962 [in] VARIANT criteria);
964 [id(0x0000041a), propget]
965 HRESULT PageCount(
966 [out, retval] LONG *count);
968 [id(0x00000418), propget]
969 HRESULT PageSize(
970 [out, retval] LONG *size);
972 [id(0x00000418), propput]
973 HRESULT PageSize(
974 [in] LONG size);
976 [id(0x00000407), propget]
977 HRESULT Sort(
978 [out, retval] BSTR *criteria);
980 [id(0x00000407), propput]
981 HRESULT Sort(
982 [in] BSTR criteria);
984 [id(0x00000405), propget]
985 HRESULT Status(
986 [out, retval] LONG *status);
988 [id(0x0000041e), propget]
989 HRESULT State(
990 [out, retval] LONG *state);
992 [id(0x60030030), hidden]
993 HRESULT _xClone(
994 [out, retval] _Recordset **object);
996 [id(0x0000040b)]
997 HRESULT UpdateBatch(
998 [in, defaultvalue(adAffectAll)] AffectEnum affect_records);
1000 [id(0x00000419)]
1001 HRESULT CancelBatch(
1002 [in, defaultvalue(adAffectAll)] AffectEnum affect_records);
1004 [id(0x0000041b), propget]
1005 HRESULT CursorLocation(
1006 [out, retval] CursorLocationEnum *cursor_loc);
1008 [id(0x0000041b), propput]
1009 HRESULT CursorLocation(
1010 [in] CursorLocationEnum cursor_loc);
1012 [id(0x0000041c)]
1013 HRESULT NextRecordset(
1014 [out, optional] VARIANT *records_affected,
1015 [out, retval] _Recordset **record_set);
1017 [id(0x0000040c)]
1018 HRESULT Supports(
1019 [in] CursorOptionEnum cursor_options,
1020 [out, retval] VARIANT_BOOL *ret);
1022 [id(0xfffffff8), propget, hidden]
1023 HRESULT Collect(
1024 [in] VARIANT index,
1025 [out, retval] VARIANT *var);
1027 [id(0xfffffff8), propput, hidden]
1028 HRESULT Collect(
1029 [in] VARIANT index,
1030 [in] VARIANT var);
1032 [id(0x0000041d), propget]
1033 HRESULT MarshalOptions(
1034 [out, retval] MarshalOptionsEnum *options);
1036 [id(0x0000041d), propput]
1037 HRESULT MarshalOptions(
1038 [in] MarshalOptionsEnum options);
1040 [id(0x00000422)]
1041 HRESULT Find(
1042 [in] BSTR criteria,
1043 [in, defaultvalue(0)] LONG skip_records,
1044 [in, defaultvalue(adSearchForward)] SearchDirectionEnum search_direction,
1045 [in, optional] VARIANT start);
1049 uuid(0000054f-0000-0010-8000-00aa006d2ea4),
1050 odl,
1051 dual,
1052 nonextensible,
1053 oleautomation
1055 interface Recordset20 : Recordset15
1057 [id(0x0000041f)]
1058 HRESULT Cancel();
1060 [id(0x00000420), propget]
1061 HRESULT DataSource(
1062 [out, retval] IUnknown **data_source);
1064 [id(0x00000420), propputref]
1065 HRESULT DataSource(
1066 [in] IUnknown *data_source);
1068 [hidden]
1069 HRESULT _xSave(
1070 [in, optional] BSTR filename,
1071 [in, defaultvalue(adPersistADTG)] PersistFormatEnum persist_format);
1073 [id(0x00000425), propget]
1074 HRESULT ActiveCommand(
1075 [out, retval] IDispatch **cmd);
1077 [id(0x00000427), propput]
1078 HRESULT StayInSync(
1079 [in] VARIANT_BOOL stay_in_sync);
1081 [id(0x00000427), propget]
1082 HRESULT StayInSync(
1083 [out, retval] VARIANT_BOOL *stay_in_sync);
1085 [id(0x00000426)]
1086 HRESULT GetString(
1087 [in, defaultvalue(adClipString)] StringFormatEnum string_format,
1088 [in, defaultvalue(-1)] LONG num_rows,
1089 [in, optional] BSTR column_delimiter,
1090 [in, optional] BSTR row_delimiter,
1091 [in, optional] BSTR null_expr,
1092 [out, retval] BSTR *ret_string);
1094 [id(0x00000428), propget]
1095 HRESULT DataMember(
1096 [out, retval] BSTR *data_member);
1098 [id(0x00000428), propput]
1099 HRESULT DataMember(
1100 [in] BSTR data_member);
1102 [id(0x00000429)]
1103 HRESULT CompareBookmarks(
1104 [in] VARIANT bookmark1,
1105 [in] VARIANT bookmark2,
1106 [out, retval] CompareEnum *compare);
1108 [id(0x0000040a)]
1109 HRESULT Clone(
1110 [in, defaultvalue(adLockUnspecified)] LockTypeEnum lock_type,
1111 [out, retval] _Recordset **object);
1113 [id(0x00000400)]
1114 HRESULT Resync(
1115 [in, defaultvalue(adAffectAll)] AffectEnum affect_records,
1116 [in, defaultvalue(adResyncAllValues)] ResyncEnum resync_values);
1120 uuid(00000555-0000-0010-8000-00aa006d2ea4),
1121 odl,
1122 dual,
1123 nonextensible,
1124 oleautomation
1126 interface Recordset21 : Recordset20
1128 [id(0x0000042a)]
1129 HRESULT Seek(
1130 [in] VARIANT key_values,
1131 [in, defaultvalue(adSeekFirstEQ)] SeekEnum seek_option);
1133 [id(0x0000042b), propput]
1134 HRESULT Index(
1135 [in] BSTR index);
1137 [id(0x0000042b), propget]
1138 HRESULT Index(
1139 [out, retval] BSTR *index);
1143 uuid(00000556-0000-0010-8000-00aa006d2ea4),
1144 odl,
1145 dual,
1146 nonextensible,
1147 oleautomation
1149 interface _Recordset : Recordset21
1151 [id(0x00000421)]
1152 HRESULT Save(
1153 [in, optional] VARIANT destination,
1154 [in, defaultvalue(adPersistADTG)] PersistFormatEnum persist_format);
1158 uuid(00000500-0000-0010-8000-00aa006d2ea4),
1159 odl,
1160 dual,
1161 nonextensible,
1162 oleautomation
1164 interface Error : IDispatch
1166 [id(0x60020000), propget]
1167 HRESULT Number(
1168 [out, retval] LONG *number);
1170 [id(0x60020001), propget]
1171 HRESULT Source(
1172 [out, retval] BSTR *str);
1174 [id(00000000), propget]
1175 HRESULT Description(
1176 [out, retval] BSTR *str);
1178 [id(0x60020003), propget]
1179 HRESULT HelpFile(
1180 [out, retval] BSTR *str);
1182 [id(0x60020004), propget]
1183 HRESULT HelpContext(
1184 [out, retval] LONG *ctx);
1186 [id(0x60020005), propget]
1187 HRESULT SQLState(
1188 [out, retval] BSTR *str);
1190 [id(0x60020006), propget]
1191 HRESULT NativeError(
1192 [out, retval] LONG *error);
1196 uuid(00000501-0000-0010-8000-00aa006d2ea4),
1197 odl,
1198 dual,
1199 nonextensible,
1200 oleautomation
1202 interface Errors : _Collection
1204 [id(00000000), propget]
1205 HRESULT Item(
1206 [in] VARIANT index,
1207 [out, retval] Error **object);
1209 [id(0x60030001)]
1210 HRESULT Clear();
1214 uuid(00000515-0000-0010-8000-00aa006d2ea4),
1215 odl,
1216 dual,
1217 oleautomation
1219 interface Connection15 : _ADO
1221 [id(00000000), propget]
1222 HRESULT ConnectionString(
1223 [out, retval] BSTR *str);
1225 [id(00000000), propput]
1226 HRESULT ConnectionString(
1227 [in] BSTR str);
1229 [id(0x00000002), propget]
1230 HRESULT CommandTimeout(
1231 [out, retval] LONG *timeout);
1233 [id(0x00000002), propput]
1234 HRESULT CommandTimeout(
1235 [in] LONG timeout);
1237 [id(0x00000003), propget]
1238 HRESULT ConnectionTimeout(
1239 [out, retval] LONG *timeout);
1241 [id(0x00000003), propput]
1242 HRESULT ConnectionTimeout(
1243 [in] LONG timeout);
1245 [id(0x00000004), propget]
1246 HRESULT Version(
1247 [out, retval] BSTR *str);
1249 [id(0x00000005)]
1250 HRESULT Close();
1252 [id(0x00000006)]
1253 HRESULT Execute(
1254 [in] BSTR command,
1255 [out, optional] VARIANT *records_affected,
1256 [in, defaultvalue(-1)] LONG options,
1257 [out, retval] _Recordset **record_set);
1259 [id(0x00000007)]
1260 HRESULT BeginTrans(
1261 [out, retval] LONG *transaction_level);
1263 [id(0x00000008)]
1264 HRESULT CommitTrans();
1266 [id(0x00000009)]
1267 HRESULT RollbackTrans();
1269 [id(0x0000000a)]
1270 HRESULT Open(
1271 [in, defaultvalue("")] BSTR connection_str,
1272 [in, defaultvalue("")] BSTR user_id,
1273 [in, defaultvalue("")] BSTR password,
1274 [in, defaultvalue(-1)] LONG options);
1276 [id(0x0000000b), propget]
1277 HRESULT Errors(
1278 [out, retval] Errors **object);
1280 [id(0x0000000c), propget]
1281 HRESULT DefaultDatabase(
1282 [out, retval] BSTR *str);
1284 [id(0x0000000c), propput]
1285 HRESULT DefaultDatabase(
1286 [in] BSTR str);
1288 [id(0x0000000d), propget]
1289 HRESULT IsolationLevel(
1290 [out, retval] IsolationLevelEnum *level);
1292 [id(0x0000000d), propput]
1293 HRESULT IsolationLevel(
1294 [in] IsolationLevelEnum level);
1296 [id(0x0000000e), propget]
1297 HRESULT Attributes(
1298 [out, retval] LONG *attr);
1300 [id(0x0000000e), propput]
1301 HRESULT Attributes(
1302 [in] LONG attr);
1304 [id(0x0000000f), propget]
1305 HRESULT CursorLocation(
1306 [out, retval] CursorLocationEnum *cursor_loc);
1308 [id(0x0000000f), propput]
1309 HRESULT CursorLocation(
1310 [in] CursorLocationEnum cursor_loc);
1312 [id(0x00000010), propget]
1313 HRESULT Mode(
1314 [out, retval] ConnectModeEnum *mode);
1316 [id(0x00000010), propput]
1317 HRESULT Mode(
1318 [in] ConnectModeEnum mode);
1320 [id(0x00000011), propget]
1321 HRESULT Provider(
1322 [out, retval] BSTR *str);
1324 [id(0x00000011), propput]
1325 HRESULT Provider(
1326 [in] BSTR str);
1328 [id(0x00000012), propget]
1329 HRESULT State(
1330 [out, retval] LONG *state);
1332 [id(0x00000013)]
1333 HRESULT OpenSchema(
1334 [in] SchemaEnum schema,
1335 [in, optional] VARIANT restrictions,
1336 [in, optional] VARIANT schema_id,
1337 [out, retval] _Recordset **record_set);
1341 uuid(00000550-0000-0010-8000-00aa006d2ea4),
1342 odl,
1343 dual,
1344 oleautomation
1346 interface _Connection : Connection15
1348 [id(0x00000015)]
1349 HRESULT Cancel();
1353 uuid(0000050c-0000-0010-8000-00aa006d2ea4),
1354 odl,
1355 dual,
1356 nonextensible,
1357 oleautomation
1359 interface _Parameter : _ADO
1361 [id(0x60030000), propget]
1362 HRESULT Name(
1363 [out, retval] BSTR *str);
1365 [id(0x60030000), propput]
1366 HRESULT Name(
1367 [in] BSTR str);
1369 [id(00000000), propget]
1370 HRESULT Value(
1371 [out, retval] VARIANT *val);
1373 [id(00000000), propput]
1374 HRESULT Value(
1375 [in] VARIANT val);
1377 [id(0x60030004), propget]
1378 HRESULT Type(
1379 [out, retval] DataTypeEnum *data_type);
1381 [id(0x60030004), propput]
1382 HRESULT Type(
1383 [in] DataTypeEnum data_type);
1385 [id(0x60030006), propput]
1386 HRESULT Direction(
1387 [in] ParameterDirectionEnum direction);
1389 [id(0x60030006), propget]
1390 HRESULT Direction(
1391 [out, retval] ParameterDirectionEnum *direction);
1393 [id(0x60030008), propput]
1394 HRESULT Precision(
1395 [in] unsigned char precision);
1397 [id(0x60030008), propget]
1398 HRESULT Precision(
1399 [out, retval] unsigned char *precision);
1401 [id(0x6003000a), propput]
1402 HRESULT NumericScale(
1403 [in] unsigned char scale);
1405 [id(0x6003000a), propget]
1406 HRESULT NumericScale(
1407 [out, retval] unsigned char *scale);
1409 [id(0x6003000c), propput]
1410 HRESULT Size(
1411 [in] LONG size);
1413 [id(0x6003000c), propget]
1414 HRESULT Size(
1415 [out, retval] LONG *size);
1417 [id(0x6003000e)]
1418 HRESULT AppendChunk(
1419 [in] VARIANT val);
1421 [id(0x6003000f), propget]
1422 HRESULT Attributes(
1423 [out, retval] LONG *attrs);
1425 [id(0x6003000f), propput]
1426 HRESULT Attributes(
1427 [in] LONG attrs);
1431 uuid(00000513-0000-0010-8000-00aa006d2ea4),
1432 odl,
1433 dual,
1434 nonextensible,
1435 oleautomation
1437 interface _DynaCollection : _Collection
1439 [id(0x60030000)]
1440 HRESULT Append(
1441 [in] IDispatch *object);
1443 [id(0x60030001)]
1444 HRESULT Delete(
1445 [in] VARIANT index);
1449 uuid(0000050d-0000-0010-8000-00aa006d2ea4),
1450 odl,
1451 dual,
1452 nonextensible,
1453 oleautomation
1455 interface Parameters : _DynaCollection
1457 [id(00000000), propget]
1458 HRESULT Item(
1459 [in] VARIANT index,
1460 [out, retval] _Parameter **object);
1464 uuid(00000508-0000-0010-8000-00aa006d2ea4),
1465 odl,
1466 dual,
1467 nonextensible,
1468 oleautomation
1470 interface Command15 : _ADO
1472 [id(0x60030000), propget]
1473 HRESULT ActiveConnection(
1474 [out, retval] _Connection **object);
1476 [id(0x60030000), propputref]
1477 HRESULT ActiveConnection(
1478 [in] _Connection *object);
1480 [id(0x60030000), propput]
1481 HRESULT ActiveConnection(
1482 [in] VARIANT object);
1484 [id(0x60030003), propget]
1485 HRESULT CommandText(
1486 [out, retval] BSTR *str);
1488 [id(0x60030003), propput]
1489 HRESULT CommandText(
1490 [in] BSTR str);
1492 [id(0x60030005), propget]
1493 HRESULT CommandTimeout(
1494 [out, retval] LONG *timeout);
1496 [id(0x60030005), propput]
1497 HRESULT CommandTimeout(
1498 [in] LONG timeout);
1500 [id(0x60030007), propget]
1501 HRESULT Prepared(
1502 [out, retval] VARIANT_BOOL *prepared);
1504 [id(0x60030007), propput]
1505 HRESULT Prepared(
1506 [in] VARIANT_BOOL prepared);
1508 [id(0x60030009)]
1509 HRESULT Execute(
1510 [out, optional] VARIANT *records_affected,
1511 [in, optional] VARIANT *parameters,
1512 [in, defaultvalue(-1)] LONG options,
1513 [out, retval] _Recordset **record_set);
1515 [id(0x6003000a)]
1516 HRESULT CreateParameter(
1517 [in, defaultvalue("")] BSTR name,
1518 [in, defaultvalue(adEmpty)] DataTypeEnum type,
1519 [in, defaultvalue(adParamInput)] ParameterDirectionEnum direction,
1520 [in, defaultvalue(0)] LONG size,
1521 [in, optional] VARIANT value,
1522 [out, retval] _Parameter **parameter);
1524 [id(00000000), propget]
1525 HRESULT Parameters(
1526 [out, retval] Parameters **object);
1528 [id(0x6003000c), propput]
1529 HRESULT CommandType(
1530 [in] CommandTypeEnum cmd_type);
1532 [id(0x6003000c), propget]
1533 HRESULT CommandType(
1534 [out, retval] CommandTypeEnum *cmd_type);
1536 [id(0x6003000e), propget]
1537 HRESULT Name(
1538 [out, retval] BSTR *name);
1540 [id(0x6003000e), propput]
1541 HRESULT Name(
1542 [in] BSTR name);
1546 uuid(0000054e-0000-0010-8000-00aa006d2ea4),
1547 odl,
1548 dual,
1549 nonextensible,
1550 oleautomation
1552 interface Command25 : Command15
1554 [id(0x60030010), propget]
1555 HRESULT State(
1556 [out, retval] LONG *state);
1558 [id(0x60030011)]
1559 HRESULT Cancel();
1563 uuid(b08400bd-f9d1-4d02-b856-71d5dba123e9),
1564 odl,
1565 dual,
1566 nonextensible,
1567 oleautomation
1569 interface _Command : Command25
1571 [id(0x60030012), propputref]
1572 HRESULT CommandStream(
1573 [in] IUnknown *stream);
1575 [id(0x60030012), propget]
1576 HRESULT CommandStream(
1577 [out, retval] VARIANT *stream);
1579 [id(0x60030013), propput]
1580 HRESULT Dialect(
1581 [in] BSTR dialect);
1583 [id(0x60030013), propget]
1584 HRESULT Dialect(
1585 [out, retval] BSTR *dialect);
1587 [id(0x60030014), propput]
1588 HRESULT NamedParameters(
1589 [in] VARIANT_BOOL named_parameters);
1591 [id(0x60030014), propget]
1592 HRESULT NamedParameters(
1593 [out, retval] VARIANT_BOOL *named_parameters);
1597 uuid(00000402-0000-0010-8000-00aa006d2ea4),
1598 odl,
1599 hidden
1601 interface ConnectionEventsVt : IUnknown
1603 HRESULT InfoMessage(
1604 [in] Error *error,
1605 [in, out] EventStatusEnum *status,
1606 [in] _Connection *connection);
1608 HRESULT BeginTransComplete(
1609 [in] LONG TransactionLevel,
1610 [in] Error *error,
1611 [in, out] EventStatusEnum *status,
1612 [in] _Connection *connection);
1614 HRESULT CommitTransComplete(
1615 [in] Error *error,
1616 [in, out] EventStatusEnum *status,
1617 [in] _Connection *connection);
1619 HRESULT RollbackTransComplete(
1620 [in] Error *error,
1621 [in, out] EventStatusEnum *status,
1622 [in] _Connection *connection);
1624 HRESULT WillExecute(
1625 [in, out] BSTR *source,
1626 [in, out] CursorTypeEnum *cursor_type,
1627 [in, out] LockTypeEnum *lock_type,
1628 [in, out] LONG *options,
1629 [in, out] EventStatusEnum *status,
1630 [in] _Command *command,
1631 [in] _Recordset *record_set,
1632 [in] _Connection *connection);
1634 HRESULT ExecuteComplete(
1635 [in] LONG records_affected,
1636 [in] Error *error,
1637 [in, out] EventStatusEnum *status,
1638 [in] _Command *command,
1639 [in] _Recordset *record_set,
1640 [in] _Connection *connection);
1642 HRESULT WillConnect(
1643 [in, out] BSTR *string,
1644 [in, out] BSTR *userid,
1645 [in, out] BSTR *password,
1646 [in, out] LONG *options,
1647 [in, out] EventStatusEnum *status,
1648 [in] _Connection *connection);
1650 HRESULT ConnectComplete(
1651 [in] Error *error,
1652 [in, out] EventStatusEnum *status,
1653 [in] _Connection *connection);
1655 HRESULT Disconnect(
1656 [in, out] EventStatusEnum *status,
1657 [in] _Connection *connection);
1661 uuid(00000400-0000-0010-8000-00aa006d2ea4)
1663 dispinterface ConnectionEvents
1665 properties:
1666 methods:
1667 [id(00000000)]
1668 HRESULT InfoMessage(
1669 [in] Error *error,
1670 [in, out] EventStatusEnum *status,
1671 [in] _Connection *Connection);
1673 [id(0x00000001)]
1674 HRESULT BeginTransComplete(
1675 [in] LONG TransactionLevel,
1676 [in] Error *error,
1677 [in, out] EventStatusEnum *status,
1678 [in] _Connection *connection);
1680 [id(0x00000003)]
1681 HRESULT CommitTransComplete(
1682 [in] Error *error,
1683 [in, out] EventStatusEnum *status,
1684 [in] _Connection *connection);
1686 [id(0x00000002)]
1687 HRESULT RollbackTransComplete(
1688 [in] Error *error,
1689 [in, out] EventStatusEnum *status,
1690 [in] _Connection *connection);
1692 [id(0x00000004)]
1693 HRESULT WillExecute(
1694 [in, out] BSTR *source,
1695 [in, out] CursorTypeEnum *cursor_type,
1696 [in, out] LockTypeEnum *lock_type,
1697 [in, out] LONG *options,
1698 [in, out] EventStatusEnum *status,
1699 [in] _Command *command,
1700 [in] _Recordset *record_set,
1701 [in] _Connection *connection);
1703 [id(0x00000005)]
1704 HRESULT ExecuteComplete(
1705 [in] LONG records_affected,
1706 [in] Error *error,
1707 [in, out] EventStatusEnum *status,
1708 [in] _Command *command,
1709 [in] _Recordset *record_set,
1710 [in] _Connection *connection);
1712 [id(0x00000006)]
1713 HRESULT WillConnect(
1714 [in, out] BSTR *string,
1715 [in, out] BSTR *userid,
1716 [in, out] BSTR *password,
1717 [in, out] LONG *options,
1718 [in, out] EventStatusEnum *status,
1719 [in] _Connection *connection);
1721 [id(0x00000007)]
1722 HRESULT ConnectComplete(
1723 [in] Error *error,
1724 [in, out] EventStatusEnum *status,
1725 [in] _Connection *connection);
1727 [id(0x00000008)]
1728 HRESULT Disconnect(
1729 [in, out] EventStatusEnum *status,
1730 [in] _Connection *connection);
1734 uuid(00000562-0000-0010-8000-00aa006d2ea4),
1735 odl,
1736 dual,
1737 nonextensible,
1738 oleautomation
1740 interface _Record : _ADO
1742 [id(1), propget]
1743 HRESULT ActiveConnection(
1744 [out, retval] VARIANT *connection);
1746 [id(1), propput]
1747 HRESULT ActiveConnection(
1748 [in] BSTR connection);
1750 [id(1), propputref]
1751 HRESULT ActiveConnection(
1752 [in] _Connection *connection);
1754 [id(2), propget]
1755 HRESULT State(
1756 [out, retval] ObjectStateEnum *state);
1758 [id(3), propget]
1759 HRESULT Source(
1760 [out, retval] VARIANT *source);
1762 [id(3), propput]
1763 HRESULT Source(
1764 [in] BSTR source);
1766 [id(3), propputref]
1767 HRESULT Source(
1768 [in] IDispatch *source);
1770 [id(4), propget]
1771 HRESULT Mode(
1772 [out, retval] ConnectModeEnum *mode);
1774 [id(4), propput]
1775 HRESULT Mode(
1776 [in] ConnectModeEnum mode);
1778 [id(5), propget]
1779 HRESULT ParentURL(
1780 [out, retval] BSTR *parent_URL);
1782 [id(6)]
1783 HRESULT MoveRecord(
1784 [in, defaultvalue("")] BSTR source,
1785 [in, defaultvalue("")] BSTR Destination,
1786 [in, optional] BSTR UserName,
1787 [in, optional] BSTR Password,
1788 [in, defaultvalue(adMoveUnspecified)] MoveRecordOptionsEnum Options,
1789 [in, optional] VARIANT_BOOL Async,
1790 [out, retval] BSTR *pbstrNewURL);
1792 [id(7)]
1793 HRESULT CopyRecord(
1794 [in, defaultvalue("")] BSTR source,
1795 [in, defaultvalue("")] BSTR destination,
1796 [in, optional] BSTR username,
1797 [in, optional] BSTR password,
1798 [in, defaultvalue(adCopyUnspecified)] CopyRecordOptionsEnum options,
1799 [in, optional] VARIANT_BOOL async,
1800 [out, retval] BSTR *new_URL);
1802 [id(8)]
1803 HRESULT DeleteRecord(
1804 [in] BSTR source,
1805 [in, optional] VARIANT_BOOL async);
1807 [id(9)]
1808 HRESULT Open(
1809 [in, optional] VARIANT source,
1810 [in, optional] VARIANT active_connection,
1811 [in, optional] ConnectModeEnum mode,
1812 [in, defaultvalue(adFailIfNotExists)] RecordCreateOptionsEnum create_options,
1813 [in, defaultvalue(adOpenRecordUnspecified)] RecordOpenOptionsEnum options,
1814 [in, optional] BSTR username,
1815 [in, optional] BSTR password);
1817 [id(10)]
1818 HRESULT Close();
1820 [id(0), propget]
1821 HRESULT Fields(
1822 [out, retval] Fields **fields);
1824 [id(11), propget]
1825 HRESULT RecordType(
1826 [out, retval] RecordTypeEnum *type);
1828 [id(12)]
1829 HRESULT GetChildren(
1830 [out, retval] _Recordset **record_set);
1832 [id(13)]
1833 HRESULT Cancel();
1837 uuid(00000565-0000-0010-8000-00aa006d2ea4),
1838 odl,
1839 dual,
1840 nonextensible,
1841 oleautomation
1843 interface _Stream : IDispatch
1845 [id(1), propget]
1846 HRESULT Size(
1847 [out, retval] LONG *size);
1849 [id(2), propget]
1850 HRESULT EOS(
1851 [out, retval] VARIANT_BOOL *eos);
1853 [id(3), propget]
1854 HRESULT Position(
1855 [out, retval] LONG *position);
1857 [id(3), propput]
1858 HRESULT Position(
1859 [in] LONG position);
1861 [id(4), propget]
1862 HRESULT Type(
1863 [out, retval] StreamTypeEnum *type);
1865 [id(4), propput]
1866 HRESULT Type(
1867 [in] StreamTypeEnum type);
1869 [id(5), propget]
1870 HRESULT LineSeparator(
1871 [out, retval] LineSeparatorEnum *separator);
1873 [id(5), propput]
1874 HRESULT LineSeparator(
1875 [in] LineSeparatorEnum separator);
1877 [id(6), propget]
1878 HRESULT State(
1879 [out, retval] ObjectStateEnum *state);
1881 [id(7), propget]
1882 HRESULT Mode(
1883 [out, retval] ConnectModeEnum *mode);
1885 [id(7), propput]
1886 HRESULT Mode(
1887 [in] ConnectModeEnum mode);
1889 [id(8), propget]
1890 HRESULT Charset(
1891 [out, retval] BSTR *charset);
1893 [id(8), propput]
1894 HRESULT Charset(
1895 [in] BSTR charset);
1897 [id(9)]
1898 HRESULT Read(
1899 [in, defaultvalue(adReadAll)] LONG num_bytes,
1900 [out, retval] VARIANT *val);
1902 [id(10)]
1903 HRESULT Open(
1904 [in, optional] VARIANT source,
1905 [in, defaultvalue(adModeUnknown)] ConnectModeEnum mode,
1906 [in, defaultvalue(adOpenStreamUnspecified)] StreamOpenOptionsEnum options,
1907 [in, optional] BSTR username,
1908 [in, optional] BSTR password);
1910 [id(11)]
1911 HRESULT Close(void);
1913 [id(12)]
1914 HRESULT SkipLine(void);
1916 [id(13)]
1917 HRESULT Write(
1918 [in] VARIANT buffer);
1920 [id(14)]
1921 HRESULT SetEOS(void);
1923 [id(15)]
1924 HRESULT CopyTo(
1925 [in] _Stream *dest,
1926 [in, defaultvalue(-1)] LONG size);
1928 [id(16)]
1929 HRESULT Flush(void);
1931 [id(17)]
1932 HRESULT SaveToFile(
1933 [in] BSTR FileName,
1934 [in, defaultvalue(adSaveCreateNotExist)] SaveOptionsEnum options);
1936 [id(18)]
1937 HRESULT LoadFromFile(
1938 [in] BSTR filename);
1940 [id(19)]
1941 HRESULT ReadText(
1942 [in, defaultvalue(adReadAll)] LONG size,
1943 [out, retval] BSTR *str);
1945 [id(20)]
1946 HRESULT WriteText(
1947 [in] BSTR data,
1948 [in, defaultvalue(adWriteChar)] StreamWriteEnum options);
1950 [id(21)]
1951 HRESULT Cancel(void);
1955 uuid(00000266-0000-0010-8000-00aa006d2ea4)
1957 dispinterface RecordsetEvents
1959 properties:
1960 methods:
1961 [id(0x00000009)]
1962 HRESULT WillChangeField(
1963 [in] LONG count,
1964 [in] VARIANT fields,
1965 [in, out] EventStatusEnum *status,
1966 [in] _Recordset *record_set);
1968 [id(0x0000000a)]
1969 HRESULT FieldChangeComplete(
1970 [in] LONG count,
1971 [in] VARIANT fields,
1972 [in] Error *error,
1973 [in, out] EventStatusEnum *status,
1974 [in] _Recordset *record_set);
1976 [id(0x0000000b)]
1977 HRESULT WillChangeRecord(
1978 [in] EventReasonEnum reason,
1979 [in] LONG count,
1980 [in, out] EventStatusEnum *status,
1981 [in] _Recordset *record_set);
1983 [id(0x0000000c)]
1984 HRESULT RecordChangeComplete(
1985 [in] EventReasonEnum reason,
1986 [in] LONG count,
1987 [in] Error *error,
1988 [in, out] EventStatusEnum *status,
1989 [in] _Recordset *record_set);
1991 [id(0x0000000d)]
1992 HRESULT WillChangeRecordset(
1993 [in] EventReasonEnum reason,
1994 [in, out] EventStatusEnum *status,
1995 [in] _Recordset *record_set);
1997 [id(0x0000000e)]
1998 HRESULT RecordsetChangeComplete(
1999 [in] EventReasonEnum reason,
2000 [in] Error *error,
2001 [in, out] EventStatusEnum *status,
2002 [in] _Recordset *record_set);
2004 [id(0x0000000f)]
2005 HRESULT WillMove(
2006 [in] EventReasonEnum reason,
2007 [in, out] EventStatusEnum *status,
2008 [in] _Recordset *record_set);
2010 [id(0x00000010)]
2011 HRESULT MoveComplete(
2012 [in] EventReasonEnum reason,
2013 [in] Error *error,
2014 [in, out] EventStatusEnum *status,
2015 [in] _Recordset *record_set);
2017 [id(0x00000011)]
2018 HRESULT EndOfRecordset(
2019 [in, out] VARIANT_BOOL *more_data,
2020 [in, out] EventStatusEnum *status,
2021 [in] _Recordset *record_set);
2023 [id(0x00000012)]
2024 HRESULT FetchProgress(
2025 [in] LONG progress,
2026 [in] LONG max_progress,
2027 [in, out] EventStatusEnum *status,
2028 [in] _Recordset *record_set);
2030 [id(0x00000013)]
2031 HRESULT FetchComplete(
2032 [in] Error *error,
2033 [in, out] EventStatusEnum *status,
2034 [in] _Recordset *record_set);
2038 uuid(00000538-0000-0010-8000-00aa006d2ea4),
2039 odl,
2040 hidden
2042 interface ADODebugging : IUnknown
2044 HRESULT IsGlobalDebugMode(
2045 VARIANT_BOOL *debugging_on);
2047 HRESULT SetGlobalDebugMode(
2048 IUnknown *debugger,
2049 VARIANT_BOOL debugging_on);
2053 uuid(00000516-0000-0010-8000-00aa006d2ea4),
2054 odl,
2055 restricted
2057 interface ADOConnectionConstruction15 : IUnknown
2059 [propget]
2060 HRESULT DSO(
2061 [out, retval] IUnknown **dso);
2063 [propget]
2064 HRESULT Session(
2065 [out, retval] IUnknown **session);
2067 HRESULT WrapDSOandSession(
2068 [in] IUnknown *dso,
2069 [in] IUnknown *session);
2073 uuid(00000551-0000-0010-8000-00aa006d2ea4),
2074 odl,
2075 restricted
2077 interface ADOConnectionConstruction : ADOConnectionConstruction15
2082 uuid(00000517-0000-0010-8000-00aa006d2ea4),
2083 odl,
2084 restricted
2086 interface ADOCommandConstruction : IUnknown
2088 [propget]
2089 HRESULT OLEDBCommand(
2090 [out, retval] IUnknown **command);
2092 [propput]
2093 HRESULT OLEDBCommand(
2094 [in] IUnknown *command);
2098 uuid(00000283-0000-0010-8000-00aa006d2ea4),
2099 odl,
2100 restricted
2102 interface ADORecordsetConstruction : IDispatch
2104 [propget]
2105 HRESULT Rowset(
2106 [out, retval] IUnknown **row_set);
2108 [propput]
2109 HRESULT Rowset(
2110 [in] IUnknown *row_set);
2112 [propget]
2113 HRESULT Chapter(
2114 [out, retval] LONG *chapter);
2116 [propput]
2117 HRESULT Chapter(
2118 [in] LONG chapter);
2120 [propget]
2121 HRESULT RowPosition(
2122 [out, retval] IUnknown **row_pos);
2124 [propput]
2125 HRESULT RowPosition(
2126 [in] IUnknown *row_pos);
2130 uuid(2a75196c-d9eb-4129-b803-931327f72d5c),
2131 version(2.8)
2133 library ADODB
2135 importlib("stdole2.tlb");
2138 uuid(00000514-0000-0010-8000-00aa006d2ea4),
2140 coclass Connection
2142 [default] interface _Connection;
2143 [default, source] dispinterface ConnectionEvents;
2147 uuid(00000507-0000-0010-8000-00aa006d2ea4),
2149 coclass Command
2151 [default] interface _Command;
2155 uuid(00000535-0000-0010-8000-00aa006d2ea4),
2157 coclass Recordset
2159 [default] interface _Recordset;
2160 [default, source] dispinterface RecordsetEvents;
2164 uuid(0000050b-0000-0010-8000-00aa006d2ea4),
2166 coclass Parameter
2168 [default] interface _Parameter;
2172 uuid(00000560-0000-0010-8000-00aa006d2ea4),
2174 coclass Record
2176 [default] interface _Record;
2180 uuid(00000566-0000-0010-8000-00aa006d2ea4),
2182 coclass Stream
2184 [default] interface _Stream;