winhttp/tests: Fix a test failure.
[wine.git] / include / msado15_backcompat.idl
blobe4a847ab859941cdb579b45b63c66f4f31f879d4
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 dispinterface ConnectionEvents;
51 dispinterface RecordsetEvents;
53 typedef [uuid(0000052A-0000-0010-8000-00AA006D2EA4)] enum ErrorValueEnum
55 adErrInvalidArgument = 3001,
56 adErrOpeningFile = 3002,
57 adErrReadFile = 3003,
58 adErrWriteFile = 3004,
59 adErrNoCurrentRecord = 3021,
60 adErrIllegalOperation = 3219,
61 adErrCantChangeProvider = 3220,
62 adErrInTransaction = 3246,
63 adErrFeatureNotAvailable = 3251,
64 adErrItemNotFound = 3265,
65 adErrObjectInCollection = 3367,
66 adErrObjectNotSet = 3420,
67 adErrDataConversion = 3421,
68 adErrObjectClosed = 3704,
69 adErrObjectOpen = 3705,
70 adErrProviderNotFound = 3706,
71 adErrBoundToCommand = 3707,
72 adErrInvalidParamInfo = 3708,
73 adErrInvalidConnection = 3709,
74 adErrNotReentrant = 3710,
75 adErrStillExecuting = 3711,
76 adErrOperationCancelled = 3712,
77 adErrStillConnecting = 3713,
78 adErrInvalidTransaction = 3714,
79 adErrNotExecuting = 3715,
80 adErrUnsafeOperation = 3716,
81 adWrnSecurityDialog = 3717,
82 adWrnSecurityDialogHeader = 3718,
83 adErrIntegrityViolation = 3719,
84 adErrPermissionDenied = 3720,
85 adErrDataOverflow = 3721,
86 adErrSchemaViolation = 3722,
87 adErrSignMismatch = 3723,
88 adErrCantConvertvalue = 3724,
89 adErrCantCreate = 3725,
90 adErrColumnNotOnThisRow = 3726,
91 adErrURLDoesNotExist = 3727,
92 adErrTreePermissionDenied = 3728,
93 adErrInvalidURL = 3729,
94 adErrResourceLocked = 3730,
95 adErrResourceExists = 3731,
96 adErrCannotComplete = 3732,
97 adErrVolumeNotFound = 3733,
98 adErrOutOfSpace = 3734,
99 adErrResourceOutOfScope = 3735,
100 adErrUnavailable = 3736,
101 adErrURLNamedRowDoesNotExist = 3737,
102 adErrDelResOutOfScope = 3738,
103 adErrPropInvalidColumn = 3739,
104 adErrPropInvalidOption = 3740,
105 adErrPropInvalidValue = 3741,
106 adErrPropConflicting = 3742,
107 adErrPropNotAllSettable = 3743,
108 adErrPropNotSet = 3744,
109 adErrPropNotSettable = 3745,
110 adErrPropNotSupported = 3746,
111 adErrCatalogNotSet = 3747,
112 adErrCantChangeConnection = 3748,
113 adErrFieldsUpdateFailed = 3749,
114 adErrDenyNotSupported = 3750,
115 adErrDenyTypeNotSupported = 3751,
116 adErrProviderNotSpecified = 3753,
117 adErrConnectionStringTooLong = 3754
118 } ErrorValueEnum;
120 typedef [uuid(00000528-0000-0010-8000-00aa006d2ea4)] enum PositionEnum
122 adPosUnknown = -1,
123 adPosBOF = -2,
124 adPosEOF = -3
125 } PositionEnum;
127 typedef [uuid(a56187c5-d690-4037-ae32-a00edc376ac3), public] PositionEnum PositionEnum_Param;
129 typedef [uuid(0000051f-0000-0010-8000-00aa006d2ea4)] enum DataTypeEnum
131 adEmpty = 0,
132 adTinyInt = 16,
133 adSmallInt = 2,
134 adInteger = 3,
135 adBigInt = 20,
136 adUnsignedTinyInt = 17,
137 adUnsignedSmallInt = 18,
138 adUnsignedInt = 19,
139 adUnsignedBigInt = 21,
140 adSingle = 4,
141 adDouble = 5,
142 adCurrency = 6,
143 adDecimal = 14,
144 adNumeric = 131,
145 adBoolean = 11,
146 adError = 10,
147 adUserDefined = 132,
148 adVariant = 12,
149 adIDispatch = 9,
150 adIUnknown = 13,
151 adGUID = 72,
152 adDate = 7,
153 adDBDate = 133,
154 adDBTime = 134,
155 adDBTimeStamp = 135,
156 adBSTR = 8,
157 adChar = 129,
158 adVarChar = 200,
159 adLongVarChar = 201,
160 adWChar = 130,
161 adVarWChar = 202,
162 adLongVarWChar = 203,
163 adBinary = 128,
164 adVarBinary = 204,
165 adLongVarBinary = 205,
166 adChapter = 136,
167 adFileTime = 64,
168 adPropVariant = 138,
169 adVarNumeric = 139,
170 adArray = 0x2000
171 } DataTypeEnum;
173 typedef [uuid(00000548-0000-0010-8000-00aa006d2ea4)] enum PersistFormatEnum
175 adPersistADTG = 0,
176 adPersistXML = 1
177 } PersistFormatEnum;
179 typedef [uuid(00000552-0000-0010-8000-00aa006d2ea4)] enum SeekEnum
181 adSeekFirstEQ = 1,
182 adSeekLastEQ = 2,
183 adSeekAfterEQ = 4,
184 adSeekAfter = 8,
185 adSeekBeforeEQ = 16,
186 adSeekBefore = 32
187 } SeekEnum;
189 typedef [uuid(0000051b-0000-0010-8000-00aa006d2ea4)] enum CursorTypeEnum
191 adOpenUnspecified = -1,
192 adOpenForwardOnly = 0,
193 adOpenKeyset = 1,
194 adOpenDynamic = 2,
195 adOpenStatic = 3
196 } CursorTypeEnum;
198 typedef [uuid(00000525-0000-0010-8000-00aa006d2ea4)] enum FieldAttributeEnum
200 adFldUnspecified = -1,
201 adFldMayDefer = 0x00000002,
202 adFldUpdatable = 0x00000004,
203 adFldUnknownUpdatable = 0x00000008,
204 adFldFixed = 0x00000010,
205 adFldIsNullable = 0x00000020,
206 adFldMayBeNull = 0x00000040,
207 adFldLong = 0x00000080,
208 adFldRowID = 0x00000100,
209 adFldRowVersion = 0x00000200,
210 adFldCacheDeferred = 0x00001000,
211 adFldIsChapter = 0x00002000,
212 adFldNegativeScale = 0x00004000,
213 adFldKeyColumn = 0x00008000,
214 adFldIsRowURL = 0x00010000,
215 adFldIsDefaultStream = 0x00020000,
216 adFldIsCollection = 0x00040000
217 } FieldAttributeEnum;
219 typedef [uuid(00000544-0000-0010-8000-00aa006d2ea4)] enum ResyncEnum
221 adResyncUnderlyingValues = 1,
222 adResyncAllValues = 2
223 } ResyncEnum;
225 typedef [uuid(0000051d-0000-0010-8000-00aa006d2ea4)] enum LockTypeEnum
227 adLockUnspecified = -1,
228 adLockReadOnly = 1,
229 adLockPessimistic = 2,
230 adLockOptimistic = 3,
231 adLockBatchOptimistic = 4
232 } LockTypeEnum;
234 typedef [uuid(00000543-0000-0010-8000-00aa006d2ea4)] enum AffectEnum
236 adAffectCurrent = 1,
237 adAffectGroup = 2,
238 adAffectAll = 3,
239 adAffectAllChapters = 4
240 } AffectEnum;
242 typedef [uuid(00000526-0000-0010-8000-00aa006d2ea4)] enum EditModeEnum
244 adEditNone = 0,
245 adEditInProgress = 1,
246 adEditAdd = 2,
247 adEditDelete = 4
248 } EditModeEnum;
250 typedef [uuid(0000052f-0000-0010-8000-00aa006d2ea4)] enum CursorLocationEnum
252 adUseNone = 1,
253 adUseServer = 2,
254 adUseClient = 3,
255 adUseClientBatch = 3
256 } CursorLocationEnum;
258 typedef [uuid(0000051c-0000-0010-8000-00aa006d2ea4)] enum CursorOptionEnum
260 adHoldRecords = 256,
261 adMovePrevious = 512,
262 adBookmark = 8192,
263 adApproxPosition = 16384,
264 adUpdateBatch = 65536,
265 adResync = 131072,
266 adNotify = 262144,
267 adFind = 524288,
268 adSeek = 4194304,
269 adIndex = 8388608,
270 adAddNew = 16778240,
271 adDelete = 16779264,
272 adUpdate = 16809984
273 } CursorOptionEnum;
275 typedef [uuid(00000540-0000-0010-8000-00aa006d2ea4)] enum MarshalOptionsEnum
277 adMarshalAll = 0,
278 adMarshalModifiedOnly = 1
279 } MarshalOptionsEnum;
281 typedef [uuid(00000547-0000-0010-8000-00aa006d2ea4)] enum SearchDirectionEnum
283 adSearchForward = 1,
284 adSearchBackward = -1
285 } SearchDirectionEnum;
287 typedef [uuid(00000549-0000-0010-8000-00aa006d2ea4)] enum StringFormatEnum
289 adClipString = 2
290 } StringFormatEnum;
292 typedef [uuid(00000545-0000-0010-8000-00aa006d2ea4)] enum CompareEnum
294 adCompareLessThan = 0,
295 adCompareEqual = 1,
296 adCompareGreaterThan = 2,
297 adCompareNotEqual = 3,
298 adCompareNotComparable = 4
299 } CompareEnum;
301 typedef [uuid(00000523-0000-0010-8000-00aa006d2ea4)] enum IsolationLevelEnum
303 adXactUnspecified = -1,
304 adXactChaos = 16,
305 adXactReadUncommitted = 256,
306 adXactBrowse = 256,
307 adXactCursorStability = 4096,
308 adXactReadCommitted = 4096,
309 adXactRepeatableRead = 65536,
310 adXactSerializable = 1048576,
311 adXactIsolated = 1048576
312 } IsolationLevelEnum;
314 typedef [uuid(00000521-0000-0010-8000-00aa006d2ea4)] enum ConnectModeEnum
316 adModeUnknown = 0,
317 adModeRead = 1,
318 adModeWrite = 2,
319 adModeReadWrite = 3,
320 adModeShareDenyRead = 4,
321 adModeShareDenyWrite = 8,
322 adModeShareExclusive = 12,
323 adModeShareDenyNone = 16,
324 adModeRecursive = 4194304
325 } ConnectModeEnum;
327 typedef [uuid(00000533-0000-0010-8000-00aa006d2ea4)] enum SchemaEnum
329 adSchemaProviderSpecific = -1,
330 adSchemaAsserts = 0,
331 adSchemaCatalogs = 1,
332 adSchemaCharacterSets = 2,
333 adSchemaCollations = 3,
334 adSchemaColumns = 4,
335 adSchemaCheckConstraints = 5,
336 adSchemaConstraintColumnUsage = 6,
337 adSchemaConstraintTableUsage = 7,
338 adSchemaKeyColumnUsage = 8,
339 adSchemaReferentialContraints = 9,
340 adSchemaReferentialConstraints = 9,
341 adSchemaTableConstraints = 10,
342 adSchemaColumnsDomainUsage = 11,
343 adSchemaIndexes = 12,
344 adSchemaColumnPrivileges = 13,
345 adSchemaTablePrivileges = 14,
346 adSchemaUsagePrivileges = 15,
347 adSchemaProcedures = 16,
348 adSchemaSchemata = 17,
349 adSchemaSQLLanguages = 18,
350 adSchemaStatistics = 19,
351 adSchemaTables = 20,
352 adSchemaTranslations = 21,
353 adSchemaProviderTypes = 22,
354 adSchemaViews = 23,
355 adSchemaViewColumnUsage = 24,
356 adSchemaViewTableUsage = 25,
357 adSchemaProcedureParameters = 26,
358 adSchemaForeignKeys = 27,
359 adSchemaPrimaryKeys = 28,
360 adSchemaProcedureColumns = 29,
361 adSchemaDBInfoKeywords = 30,
362 adSchemaDBInfoLiterals = 31,
363 adSchemaCubes = 32,
364 adSchemaDimensions = 33,
365 adSchemaHierarchies = 34,
366 adSchemaLevels = 35,
367 adSchemaMeasures = 36,
368 adSchemaProperties = 37,
369 adSchemaMembers = 38,
370 adSchemaTrustees = 39,
371 adSchemaFunctions = 40,
372 adSchemaActions = 41,
373 adSchemaCommands = 42,
374 adSchemaSets = 43
375 } SchemaEnum;
377 typedef [uuid(00000530-0000-0010-8000-00aa006d2ea4)] enum EventStatusEnum
379 adStatusOK = 1,
380 adStatusErrorsOccurred = 2,
381 adStatusCantDeny = 3,
382 adStatusCancel = 4,
383 adStatusUnwantedEvent = 5
384 } EventStatusEnum;
386 typedef [uuid(0000052c-0000-0010-8000-00aa006d2ea4)] enum ParameterDirectionEnum
388 adParamUnknown = 0,
389 adParamInput = 1,
390 adParamOutput = 2,
391 adParamInputOutput = 3,
392 adParamReturnValue = 4
393 } ParameterDirectionEnum;
395 typedef [uuid(0000052e-0000-0010-8000-00aa006d2ea4)] enum CommandTypeEnum
397 adCmdUnspecified = -1,
398 adCmdUnknown = 8,
399 adCmdText = 1,
400 adCmdTable = 2,
401 adCmdStoredProc = 4,
402 adCmdFile = 256,
403 adCmdTableDirect = 512
404 } CommandTypeEnum;
406 typedef [uuid(00000532-0000-0010-8000-00aa006d2ea4)] enum ObjectStateEnum
408 adStateClosed = 0,
409 adStateOpen = 1,
410 adStateConnecting = 2,
411 adStateExecuting = 4,
412 adStateFetching = 8
413 } ObjectStateEnum;
415 typedef [uuid(00000573-0000-0010-8000-00aa006d2ea4)] enum MoveRecordOptionsEnum
417 adMoveUnspecified = -1,
418 adMoveOverWrite = 1,
419 adMoveDontUpdateLinks = 2,
420 adMoveAllowEmulation = 4
421 } MoveRecordOptionsEnum;
423 typedef [uuid(00000574-0000-0010-8000-00aa006d2ea4)] enum CopyRecordOptionsEnum
425 adCopyUnspecified = -1,
426 adCopyOverWrite = 1,
427 adCopyAllowEmulation = 4,
428 adCopyNonRecursive = 2
429 } CopyRecordOptionsEnum;
431 typedef [uuid(00000570-0000-0010-8000-00aa006d2ea4)] enum RecordCreateOptionsEnum
433 adCreateCollection = 0x00002000,
434 adCreateStructDoc = 0x80000000,
435 adCreateNonCollection = 0x00000000,
436 adOpenIfExists = 0x02000000,
437 adCreateOverwrite = 0x04000000,
438 adFailIfNotExists = -1
439 } RecordCreateOptionsEnum;
441 typedef [uuid(00000571-0000-0010-8000-00aa006d2ea4)] enum RecordOpenOptionsEnum
443 adOpenRecordUnspecified = -1,
444 adOpenOutput = 0x00800000,
445 adOpenAsync = 0x00001000,
446 adDelayFetchStream = 0x00004000,
447 adDelayFetchFields = 0x00008000,
448 adOpenExecuteCommand = 0x00010000
449 } RecordOpenOptionsEnum;
451 typedef [uuid(0000057d-0000-0010-8000-00aa006d2ea4)] enum RecordTypeEnum
453 adSimpleRecord = 0,
454 adCollectionRecord = 1,
455 adStructDoc = 2
456 } RecordTypeEnum;
458 typedef [uuid(00000576-0000-0010-8000-00aa006d2ea4)] enum StreamTypeEnum
460 adTypeBinary = 1,
461 adTypeText = 2
462 } StreamTypeEnum;
464 typedef [uuid(00000577-0000-0010-8000-00aa006d2ea4)] enum LineSeparatorEnum
466 adLF = 10,
467 adCR = 13,
468 adCRLF = -1
469 } LineSeparatorEnum;
471 typedef enum
473 adReadAll = -1,
474 adReadLine = -2
475 } StreamReadEnum;
477 typedef [uuid(0000057c-0000-0010-8000-00aa006d2ea4)] enum SaveOptionsEnum
479 adSaveCreateNotExist = 1,
480 adSaveCreateOverWrite = 2
481 } SaveOptionsEnum;
483 typedef [uuid(0000057a-0000-0010-8000-00aa006d2ea4)] enum StreamOpenOptionsEnum
485 adOpenStreamUnspecified = -1,
486 adOpenStreamAsync = 1,
487 adOpenStreamFromRecord = 4
488 } StreamOpenOptionsEnum;
490 typedef [uuid(0000057b-0000-0010-8000-00aa006d2ea4)] enum StreamWriteEnum
492 adWriteChar = 0,
493 adWriteLine = 1
494 } StreamWriteEnum;
496 typedef [uuid(00000531-0000-0010-8000-00aa006d2ea4)] enum EventReasonEnum
498 adRsnAddNew = 1,
499 adRsnDelete = 2,
500 adRsnUpdate = 3,
501 adRsnUndoUpdate = 4,
502 adRsnUndoAddNew = 5,
503 adRsnUndoDelete = 6,
504 adRsnRequery = 7,
505 adRsnResynch = 8,
506 adRsnClose = 9,
507 adRsnMove = 10,
508 adRsnFirstChange = 11,
509 adRsnMoveFirst = 12,
510 adRsnMoveNext = 13,
511 adRsnMovePrevious = 14,
512 adRsnMoveLast = 15
513 } EventReasonEnum;
516 uuid(00000503-0000-0010-8000-00aa006d2ea4),
517 odl,
518 dual,
519 nonextensible,
520 oleautomation
522 interface Property : IDispatch
524 [id(00000000), propget]
525 HRESULT Value(
526 [out, retval] VARIANT *val);
528 [id(00000000), propput]
529 HRESULT Value(
530 [in] VARIANT val);
532 [id(0x60020002), propget]
533 HRESULT Name(
534 [out, retval] BSTR *str);
536 [id(0x60020003), propget]
537 HRESULT Type(
538 [out, retval] DataTypeEnum *type);
540 [id(0x60020004), propget]
541 HRESULT Attributes(
542 [out, retval] LONG *attributes);
544 [id(0x60020004), propput]
545 HRESULT Attributes(
546 [in] LONG attributes);
550 uuid(00000512-0000-0010-8000-00aa006d2ea4),
551 odl,
552 dual,
553 nonextensible,
554 oleautomation
556 interface _Collection : IDispatch
558 [id(0x60020000), propget]
559 HRESULT Count(
560 [out, retval] LONG *count);
562 [id(0xfffffffc), restricted]
563 HRESULT _NewEnum(
564 [out, retval] IUnknown **object);
566 [id(0x60020002)]
567 HRESULT Refresh();
571 uuid(00000504-0000-0010-8000-00aa006d2ea4),
572 odl,
573 dual,
574 nonextensible,
575 oleautomation
577 interface Properties : _Collection
579 [id(00000000), propget]
580 HRESULT Item(
581 [in] VARIANT index,
582 [out, retval] Property **object);
586 uuid(00000534-0000-0010-8000-00aa006d2ea4),
587 odl,
588 dual,
589 nonextensible,
590 oleautomation
592 interface _ADO : IDispatch
594 [id(0x000001f4), propget]
595 HRESULT Properties(
596 [out, retval] Properties **object);
600 uuid(0000054c-0000-0010-8000-00aa006d2ea4),
601 odl,
602 dual,
603 nonextensible,
604 oleautomation,
605 hidden
607 interface Field20 : _ADO
609 [id(0x00000455), propget]
610 HRESULT ActualSize(
611 [out, retval] LONG *size);
613 [id(0x0000040c), propget]
614 HRESULT Attributes(
615 [out, retval] LONG *attrs);
617 [id(0x0000044f), propget]
618 HRESULT DefinedSize(
619 [out, retval] LONG *size);
621 [id(0x0000044c), propget]
622 HRESULT Name(
623 [out, retval] BSTR *str);
625 [id(0x0000044e), propget]
626 HRESULT Type(
627 [out, retval] DataTypeEnum *type);
629 [id(00000000), propget]
630 HRESULT Value(
631 [out, retval] VARIANT *val);
633 [id(00000000), propput]
634 HRESULT Value(
635 [in] VARIANT val);
637 [id(0x60030007), propget]
638 HRESULT Precision(
639 [out, retval] unsigned char *precision);
641 [id(0x60030008), propget]
642 HRESULT NumericScale(
643 [out, retval] unsigned char *scale);
645 [id(0x00000453)]
646 HRESULT AppendChunk(
647 [in] VARIANT data);
649 [id(0x00000454)]
650 HRESULT GetChunk(
651 [in] LONG length,
652 [out, retval] VARIANT *var);
654 [id(0x00000450), propget]
655 HRESULT OriginalValue(
656 [out, retval] VARIANT *val);
658 [id(0x00000451), propget]
659 HRESULT UnderlyingValue(
660 [out, retval] VARIANT *val);
662 [id(0x6003000d), propget]
663 HRESULT DataFormat(
664 [out, retval] IUnknown **format);
666 [id(0x6003000d), propputref]
667 HRESULT DataFormat(
668 [in] IUnknown *format);
670 [id(0x60030007), propput]
671 HRESULT Precision(
672 [in] unsigned char precision);
674 [id(0x60030008), propput]
675 HRESULT NumericScale(
676 [in] unsigned char scale);
678 [id(0x0000044e), propput]
679 HRESULT Type(
680 [in] DataTypeEnum type);
682 [id(0x0000044f), propput]
683 HRESULT DefinedSize(
684 [in] LONG size);
686 [id(0x0000040c), propput]
687 HRESULT Attributes(
688 [in] LONG attrs);
692 uuid(00000569-0000-0010-8000-00aa006d2ea4),
693 odl,
694 dual,
695 nonextensible,
696 oleautomation
698 interface Field : Field20
700 [id(0x0000045c), propget]
701 HRESULT Status(
702 [out, retval] LONG *status);
706 uuid(00000506-0000-0010-8000-00aa006d2ea4),
707 odl,
708 dual,
709 nonextensible,
710 oleautomation
712 interface Fields15 : _Collection
714 [id(00000000), propget]
715 HRESULT Item(
716 [in] VARIANT index,
717 [out, retval] Field **object);
721 uuid(0000054d-0000-0010-8000-00aa006d2ea4),
722 odl,
723 dual,
724 nonextensible,
725 oleautomation
727 interface Fields20 : Fields15
729 [id(0x60030001)]
730 HRESULT _Append(
731 [in] BSTR name,
732 [in] DataTypeEnum type,
733 [in, defaultvalue(0)] LONG size,
734 [in, defaultvalue(adFldUnspecified)] FieldAttributeEnum attr);
736 [id(0x60030002)]
737 HRESULT Delete(
738 [in] VARIANT index);
742 uuid(00000564-0000-0010-8000-00aa006d2ea4),
743 odl,
744 dual,
745 nonextensible,
746 oleautomation
748 interface Fields : Fields20
750 [id(0x60040001)]
751 HRESULT Append(
752 [in] BSTR name,
753 [in] DataTypeEnum type,
754 [in, defaultvalue(0)] LONG size,
755 [in, defaultvalue(adFldUnspecified)] FieldAttributeEnum attr,
756 [in, optional] VARIANT value);
758 [id(0x60040002)]
759 HRESULT Update();
761 [id(0x60040003)]
762 HRESULT Resync(
763 [in, defaultvalue(adResyncAllValues)] ResyncEnum resync_values);
765 [id(0x60040004)]
766 HRESULT CancelUpdate();
770 uuid(0000050e-0000-0010-8000-00aa006d2ea4),
771 odl,
772 dual,
773 nonextensible,
774 oleautomation
776 interface Recordset15 : _ADO
778 [id(0x000003e8), propget]
779 HRESULT AbsolutePosition(
780 [out, retval] PositionEnum_Param *position);
782 [id(0x000003e8), propput]
783 HRESULT AbsolutePosition(
784 [in] PositionEnum_Param position);
786 [id(0x000003e9), propputref]
787 HRESULT ActiveConnection(
788 [in] IDispatch *connection);
790 [id(0x000003e9), propput]
791 HRESULT ActiveConnection(
792 [in] VARIANT connection);
794 [id(0x000003e9), propget]
795 HRESULT ActiveConnection(
796 [out, retval] VARIANT *connection);
798 [id(0x000003ea), propget]
799 HRESULT BOF(
800 [out, retval] VARIANT_BOOL *bof);
802 [id(0x000003eb), propget]
803 HRESULT Bookmark(
804 [out, retval] VARIANT *bookmark);
806 [id(0x000003eb), propput]
807 HRESULT Bookmark(
808 [in] VARIANT bookmark);
810 [id(0x000003ec), propget]
811 HRESULT CacheSize(
812 [out, retval] LONG *size);
814 [id(0x000003ec), propput]
815 HRESULT CacheSize(
816 [in] LONG size);
818 [id(0x000003ed), propget]
819 HRESULT CursorType(
820 [out, retval] CursorTypeEnum *cursor_type);
822 [id(0x000003ed), propput]
823 HRESULT CursorType(
824 [in] CursorTypeEnum cursor_type);
826 [id(0x000003ee), propget]
827 HRESULT EOF(
828 [out, retval] VARIANT_BOOL *eof);
830 [id(00000000), propget]
831 HRESULT Fields(
832 [out, retval] Fields **object);
834 [id(0x000003f0), propget]
835 HRESULT LockType(
836 [out, retval] LockTypeEnum *lock_type);
838 [id(0x000003f0), propput]
839 HRESULT LockType(
840 [in] LockTypeEnum lock_type);
842 [id(0x000003f1), propget]
843 HRESULT MaxRecords(
844 [out, retval] LONG *max_records);
846 [id(0x000003f1), propput]
847 HRESULT MaxRecords(
848 [in] LONG max_records);
850 [id(0x000003f2), propget]
851 HRESULT RecordCount(
852 [out, retval] LONG *count);
854 [id(0x000003f3), propputref]
855 HRESULT Source(
856 [in] IDispatch *source);
858 [id(0x000003f3), propput]
859 HRESULT Source(
860 [in] BSTR source);
862 [id(0x000003f3), propget]
863 HRESULT Source(
864 [out, retval] VARIANT *source);
866 [id(0x000003f4)]
867 HRESULT AddNew(
868 [in, optional] VARIANT field_list,
869 [in, optional] VARIANT values);
871 [id(0x000003f5)]
872 HRESULT CancelUpdate();
874 [id(0x000003f6)]
875 HRESULT Close();
877 [id(0x000003f7)]
878 HRESULT Delete(
879 [in, defaultvalue(adAffectCurrent)] AffectEnum affect_records);
881 [id(0x000003f8)]
882 HRESULT GetRows(
883 [in, defaultvalue(-1)] LONG rows,
884 [in, optional] VARIANT start,
885 [in, optional] VARIANT fields,
886 [out, retval] VARIANT *var);
888 [id(0x000003f9)]
889 HRESULT Move(
890 [in] LONG num_records,
891 [in, optional] VARIANT start);
893 [id(0x000003fa)]
894 HRESULT MoveNext();
896 [id(0x000003fb)]
897 HRESULT MovePrevious();
899 [id(0x000003fc)]
900 HRESULT MoveFirst();
902 [id(0x000003fd)]
903 HRESULT MoveLast();
905 [id(0x000003fe)]
906 HRESULT Open(
907 [in, optional] VARIANT source,
908 [in, optional] VARIANT active_connection,
909 [in, defaultvalue(adOpenUnspecified)] CursorTypeEnum cursor_type,
910 [in, defaultvalue(adLockUnspecified)] LockTypeEnum lock_type,
911 [in, defaultvalue(-1)] LONG options);
913 [id(0x000003ff)]
914 HRESULT Requery(
915 [in, defaultvalue(-1)] LONG options);
917 [id(0x60030022), hidden]
918 HRESULT _xResync(
919 [in, defaultvalue(adAffectAll)] AffectEnum affect_records);
921 [id(0x00000401)]
922 HRESULT Update(
923 [in, optional] VARIANT fields,
924 [in, optional] VARIANT values);
926 [id(0x00000417), propget]
927 HRESULT AbsolutePage(
928 [out, retval] PositionEnum_Param *position);
930 [id(0x00000417), propput]
931 HRESULT AbsolutePage(
932 [in] PositionEnum_Param position);
934 [id(0x00000402), propget]
935 HRESULT EditMode(
936 [out, retval] EditModeEnum *mode);
938 [id(0x00000406), propget]
939 HRESULT Filter(
940 [out, retval] VARIANT *criteria);
942 [id(0x00000406), propput]
943 HRESULT Filter(
944 [in] VARIANT criteria);
946 [id(0x0000041a), propget]
947 HRESULT PageCount(
948 [out, retval] LONG *count);
950 [id(0x00000418), propget]
951 HRESULT PageSize(
952 [out, retval] LONG *size);
954 [id(0x00000418), propput]
955 HRESULT PageSize(
956 [in] LONG size);
958 [id(0x00000407), propget]
959 HRESULT Sort(
960 [out, retval] BSTR *criteria);
962 [id(0x00000407), propput]
963 HRESULT Sort(
964 [in] BSTR criteria);
966 [id(0x00000405), propget]
967 HRESULT Status(
968 [out, retval] LONG *status);
970 [id(0x0000041e), propget]
971 HRESULT State(
972 [out, retval] LONG *state);
974 [id(0x60030030), hidden]
975 HRESULT _xClone(
976 [out, retval] _Recordset **object);
978 [id(0x0000040b)]
979 HRESULT UpdateBatch(
980 [in, defaultvalue(adAffectAll)] AffectEnum affect_records);
982 [id(0x00000419)]
983 HRESULT CancelBatch(
984 [in, defaultvalue(adAffectAll)] AffectEnum affect_records);
986 [id(0x0000041b), propget]
987 HRESULT CursorLocation(
988 [out, retval] CursorLocationEnum *cursor_loc);
990 [id(0x0000041b), propput]
991 HRESULT CursorLocation(
992 [in] CursorLocationEnum cursor_loc);
994 [id(0x0000041c)]
995 HRESULT NextRecordset(
996 [out, optional] VARIANT *records_affected,
997 [out, retval] _Recordset **record_set);
999 [id(0x0000040c)]
1000 HRESULT Supports(
1001 [in] CursorOptionEnum cursor_options,
1002 [out, retval] VARIANT_BOOL *ret);
1004 [id(0xfffffff8), propget, hidden]
1005 HRESULT Collect(
1006 [in] VARIANT index,
1007 [out, retval] VARIANT *var);
1009 [id(0xfffffff8), propput, hidden]
1010 HRESULT Collect(
1011 [in] VARIANT index,
1012 [in] VARIANT var);
1014 [id(0x0000041d), propget]
1015 HRESULT MarshalOptions(
1016 [out, retval] MarshalOptionsEnum *options);
1018 [id(0x0000041d), propput]
1019 HRESULT MarshalOptions(
1020 [in] MarshalOptionsEnum options);
1022 [id(0x00000422)]
1023 HRESULT Find(
1024 [in] BSTR criteria,
1025 [in, defaultvalue(0)] LONG skip_records,
1026 [in, defaultvalue(adSearchForward)] SearchDirectionEnum search_direction,
1027 [in, optional] VARIANT start);
1031 uuid(0000054f-0000-0010-8000-00aa006d2ea4),
1032 odl,
1033 dual,
1034 nonextensible,
1035 oleautomation
1037 interface Recordset20 : Recordset15
1039 [id(0x0000041f)]
1040 HRESULT Cancel();
1042 [id(0x00000420), propget]
1043 HRESULT DataSource(
1044 [out, retval] IUnknown **data_source);
1046 [id(0x00000420), propputref]
1047 HRESULT DataSource(
1048 [in] IUnknown *data_source);
1050 [hidden]
1051 HRESULT _xSave(
1052 [in, optional] BSTR filename,
1053 [in, defaultvalue(adPersistADTG)] PersistFormatEnum persist_format);
1055 [id(0x00000425), propget]
1056 HRESULT ActiveCommand(
1057 [out, retval] IDispatch **cmd);
1059 [id(0x00000427), propput]
1060 HRESULT StayInSync(
1061 [in] VARIANT_BOOL stay_in_sync);
1063 [id(0x00000427), propget]
1064 HRESULT StayInSync(
1065 [out, retval] VARIANT_BOOL *stay_in_sync);
1067 [id(0x00000426)]
1068 HRESULT GetString(
1069 [in, defaultvalue(adClipString)] StringFormatEnum string_format,
1070 [in, defaultvalue(-1)] LONG num_rows,
1071 [in, optional] BSTR column_delimiter,
1072 [in, optional] BSTR row_delimiter,
1073 [in, optional] BSTR null_expr,
1074 [out, retval] BSTR *ret_string);
1076 [id(0x00000428), propget]
1077 HRESULT DataMember(
1078 [out, retval] BSTR *data_member);
1080 [id(0x00000428), propput]
1081 HRESULT DataMember(
1082 [in] BSTR data_member);
1084 [id(0x00000429)]
1085 HRESULT CompareBookmarks(
1086 [in] VARIANT bookmark1,
1087 [in] VARIANT bookmark2,
1088 [out, retval] CompareEnum *compare);
1090 [id(0x0000040a)]
1091 HRESULT Clone(
1092 [in, defaultvalue(adLockUnspecified)] LockTypeEnum lock_type,
1093 [out, retval] _Recordset **object);
1095 [id(0x00000400)]
1096 HRESULT Resync(
1097 [in, defaultvalue(adAffectAll)] AffectEnum affect_records,
1098 [in, defaultvalue(adResyncAllValues)] ResyncEnum resync_values);
1102 uuid(00000555-0000-0010-8000-00aa006d2ea4),
1103 odl,
1104 dual,
1105 nonextensible,
1106 oleautomation
1108 interface Recordset21 : Recordset20
1110 [id(0x0000042a)]
1111 HRESULT Seek(
1112 [in] VARIANT key_values,
1113 [in, defaultvalue(adSeekFirstEQ)] SeekEnum seek_option);
1115 [id(0x0000042b), propput]
1116 HRESULT Index(
1117 [in] BSTR index);
1119 [id(0x0000042b), propget]
1120 HRESULT Index(
1121 [out, retval] BSTR *index);
1125 uuid(00000556-0000-0010-8000-00aa006d2ea4),
1126 odl,
1127 dual,
1128 nonextensible,
1129 oleautomation
1131 interface _Recordset : Recordset21
1133 [id(0x00000421)]
1134 HRESULT Save(
1135 [in, optional] VARIANT destination,
1136 [in, defaultvalue(adPersistADTG)] PersistFormatEnum persist_format);
1140 uuid(00000500-0000-0010-8000-00aa006d2ea4),
1141 odl,
1142 dual,
1143 nonextensible,
1144 oleautomation
1146 interface Error : IDispatch
1148 [id(0x60020000), propget]
1149 HRESULT Number(
1150 [out, retval] LONG *number);
1152 [id(0x60020001), propget]
1153 HRESULT Source(
1154 [out, retval] BSTR *str);
1156 [id(00000000), propget]
1157 HRESULT Description(
1158 [out, retval] BSTR *str);
1160 [id(0x60020003), propget]
1161 HRESULT HelpFile(
1162 [out, retval] BSTR *str);
1164 [id(0x60020004), propget]
1165 HRESULT HelpContext(
1166 [out, retval] LONG *ctx);
1168 [id(0x60020005), propget]
1169 HRESULT SQLState(
1170 [out, retval] BSTR *str);
1172 [id(0x60020006), propget]
1173 HRESULT NativeError(
1174 [out, retval] LONG *error);
1178 uuid(00000501-0000-0010-8000-00aa006d2ea4),
1179 odl,
1180 dual,
1181 nonextensible,
1182 oleautomation
1184 interface Errors : _Collection
1186 [id(00000000), propget]
1187 HRESULT Item(
1188 [in] VARIANT index,
1189 [out, retval] Error **object);
1191 [id(0x60030001)]
1192 HRESULT Clear();
1196 uuid(00000515-0000-0010-8000-00aa006d2ea4),
1197 odl,
1198 dual,
1199 oleautomation
1201 interface Connection15 : _ADO
1203 [id(00000000), propget]
1204 HRESULT ConnectionString(
1205 [out, retval] BSTR *str);
1207 [id(00000000), propput]
1208 HRESULT ConnectionString(
1209 [in] BSTR str);
1211 [id(0x00000002), propget]
1212 HRESULT CommandTimeout(
1213 [out, retval] LONG *timeout);
1215 [id(0x00000002), propput]
1216 HRESULT CommandTimeout(
1217 [in] LONG timeout);
1219 [id(0x00000003), propget]
1220 HRESULT ConnectionTimeout(
1221 [out, retval] LONG *timeout);
1223 [id(0x00000003), propput]
1224 HRESULT ConnectionTimeout(
1225 [in] LONG timeout);
1227 [id(0x00000004), propget]
1228 HRESULT Version(
1229 [out, retval] BSTR *str);
1231 [id(0x00000005)]
1232 HRESULT Close();
1234 [id(0x00000006)]
1235 HRESULT Execute(
1236 [in] BSTR command,
1237 [out, optional] VARIANT *records_affected,
1238 [in, defaultvalue(-1)] LONG options,
1239 [out, retval] _Recordset **record_set);
1241 [id(0x00000007)]
1242 HRESULT BeginTrans(
1243 [out, retval] LONG *transaction_level);
1245 [id(0x00000008)]
1246 HRESULT CommitTrans();
1248 [id(0x00000009)]
1249 HRESULT RollbackTrans();
1251 [id(0x0000000a)]
1252 HRESULT Open(
1253 [in, defaultvalue("")] BSTR connection_str,
1254 [in, defaultvalue("")] BSTR user_id,
1255 [in, defaultvalue("")] BSTR password,
1256 [in, defaultvalue(-1)] LONG options);
1258 [id(0x0000000b), propget]
1259 HRESULT Errors(
1260 [out, retval] Errors **object);
1262 [id(0x0000000c), propget]
1263 HRESULT DefaultDatabase(
1264 [out, retval] BSTR *str);
1266 [id(0x0000000c), propput]
1267 HRESULT DefaultDatabase(
1268 [in] BSTR str);
1270 [id(0x0000000d), propget]
1271 HRESULT IsolationLevel(
1272 [out, retval] IsolationLevelEnum *level);
1274 [id(0x0000000d), propput]
1275 HRESULT IsolationLevel(
1276 [in] IsolationLevelEnum level);
1278 [id(0x0000000e), propget]
1279 HRESULT Attributes(
1280 [out, retval] LONG *attr);
1282 [id(0x0000000e), propput]
1283 HRESULT Attributes(
1284 [in] LONG attr);
1286 [id(0x0000000f), propget]
1287 HRESULT CursorLocation(
1288 [out, retval] CursorLocationEnum *cursor_loc);
1290 [id(0x0000000f), propput]
1291 HRESULT CursorLocation(
1292 [in] CursorLocationEnum cursor_loc);
1294 [id(0x00000010), propget]
1295 HRESULT Mode(
1296 [out, retval] ConnectModeEnum *mode);
1298 [id(0x00000010), propput]
1299 HRESULT Mode(
1300 [in] ConnectModeEnum mode);
1302 [id(0x00000011), propget]
1303 HRESULT Provider(
1304 [out, retval] BSTR *str);
1306 [id(0x00000011), propput]
1307 HRESULT Provider(
1308 [in] BSTR str);
1310 [id(0x00000012), propget]
1311 HRESULT State(
1312 [out, retval] LONG *state);
1314 [id(0x00000013)]
1315 HRESULT OpenSchema(
1316 [in] SchemaEnum schema,
1317 [in, optional] VARIANT restrictions,
1318 [in, optional] VARIANT schema_id,
1319 [out, retval] _Recordset **record_set);
1323 uuid(00000550-0000-0010-8000-00aa006d2ea4),
1324 odl,
1325 dual,
1326 oleautomation
1328 interface _Connection : Connection15
1330 [id(0x00000015)]
1331 HRESULT Cancel();
1335 uuid(0000050c-0000-0010-8000-00aa006d2ea4),
1336 odl,
1337 dual,
1338 nonextensible,
1339 oleautomation
1341 interface _Parameter : _ADO
1343 [id(0x60030000), propget]
1344 HRESULT Name(
1345 [out, retval] BSTR *str);
1347 [id(0x60030000), propput]
1348 HRESULT Name(
1349 [in] BSTR str);
1351 [id(00000000), propget]
1352 HRESULT Value(
1353 [out, retval] VARIANT *val);
1355 [id(00000000), propput]
1356 HRESULT Value(
1357 [in] VARIANT val);
1359 [id(0x60030004), propget]
1360 HRESULT Type(
1361 [out, retval] DataTypeEnum *data_type);
1363 [id(0x60030004), propput]
1364 HRESULT Type(
1365 [in] DataTypeEnum data_type);
1367 [id(0x60030006), propput]
1368 HRESULT Direction(
1369 [in] ParameterDirectionEnum direction);
1371 [id(0x60030006), propget]
1372 HRESULT Direction(
1373 [out, retval] ParameterDirectionEnum *direction);
1375 [id(0x60030008), propput]
1376 HRESULT Precision(
1377 [in] unsigned char precision);
1379 [id(0x60030008), propget]
1380 HRESULT Precision(
1381 [out, retval] unsigned char *precision);
1383 [id(0x6003000a), propput]
1384 HRESULT NumericScale(
1385 [in] unsigned char scale);
1387 [id(0x6003000a), propget]
1388 HRESULT NumericScale(
1389 [out, retval] unsigned char *scale);
1391 [id(0x6003000c), propput]
1392 HRESULT Size(
1393 [in] LONG size);
1395 [id(0x6003000c), propget]
1396 HRESULT Size(
1397 [out, retval] LONG *size);
1399 [id(0x6003000e)]
1400 HRESULT AppendChunk(
1401 [in] VARIANT val);
1403 [id(0x6003000f), propget]
1404 HRESULT Attributes(
1405 [out, retval] LONG *attrs);
1407 [id(0x6003000f), propput]
1408 HRESULT Attributes(
1409 [in] LONG attrs);
1413 uuid(00000513-0000-0010-8000-00aa006d2ea4),
1414 odl,
1415 dual,
1416 nonextensible,
1417 oleautomation
1419 interface _DynaCollection : _Collection
1421 [id(0x60030000)]
1422 HRESULT Append(
1423 [in] IDispatch *object);
1425 [id(0x60030001)]
1426 HRESULT Delete(
1427 [in] VARIANT index);
1431 uuid(0000050d-0000-0010-8000-00aa006d2ea4),
1432 odl,
1433 dual,
1434 nonextensible,
1435 oleautomation
1437 interface Parameters : _DynaCollection
1439 [id(00000000), propget]
1440 HRESULT Item(
1441 [in] VARIANT index,
1442 [out, retval] _Parameter **object);
1446 uuid(00000508-0000-0010-8000-00aa006d2ea4),
1447 odl,
1448 dual,
1449 nonextensible,
1450 oleautomation
1452 interface Command15 : _ADO
1454 [id(0x60030000), propget]
1455 HRESULT ActiveConnection(
1456 [out, retval] _Connection **object);
1458 [id(0x60030000), propputref]
1459 HRESULT ActiveConnection(
1460 [in] _Connection *object);
1462 [id(0x60030000), propput]
1463 HRESULT ActiveConnection(
1464 [in] VARIANT object);
1466 [id(0x60030003), propget]
1467 HRESULT CommandText(
1468 [out, retval] BSTR *str);
1470 [id(0x60030003), propput]
1471 HRESULT CommandText(
1472 [in] BSTR str);
1474 [id(0x60030005), propget]
1475 HRESULT CommandTimeout(
1476 [out, retval] LONG *timeout);
1478 [id(0x60030005), propput]
1479 HRESULT CommandTimeout(
1480 [in] LONG timeout);
1482 [id(0x60030007), propget]
1483 HRESULT Prepared(
1484 [out, retval] VARIANT_BOOL *prepared);
1486 [id(0x60030007), propput]
1487 HRESULT Prepared(
1488 [in] VARIANT_BOOL prepared);
1490 [id(0x60030009)]
1491 HRESULT Execute(
1492 [out, optional] VARIANT *records_affected,
1493 [in, optional] VARIANT *parameters,
1494 [in, defaultvalue(-1)] LONG options,
1495 [out, retval] _Recordset **record_set);
1497 [id(0x6003000a)]
1498 HRESULT CreateParameter(
1499 [in, defaultvalue("")] BSTR name,
1500 [in, defaultvalue(adEmpty)] DataTypeEnum type,
1501 [in, defaultvalue(adParamInput)] ParameterDirectionEnum direction,
1502 [in, defaultvalue(0)] LONG size,
1503 [in, optional] VARIANT value,
1504 [out, retval] _Parameter **parameter);
1506 [id(00000000), propget]
1507 HRESULT Parameters(
1508 [out, retval] Parameters **object);
1510 [id(0x6003000c), propput]
1511 HRESULT CommandType(
1512 [in] CommandTypeEnum cmd_type);
1514 [id(0x6003000c), propget]
1515 HRESULT CommandType(
1516 [out, retval] CommandTypeEnum *cmd_type);
1518 [id(0x6003000e), propget]
1519 HRESULT Name(
1520 [out, retval] BSTR *name);
1522 [id(0x6003000e), propput]
1523 HRESULT Name(
1524 [in] BSTR name);
1528 uuid(0000054e-0000-0010-8000-00aa006d2ea4),
1529 odl,
1530 dual,
1531 nonextensible,
1532 oleautomation
1534 interface Command25 : Command15
1536 [id(0x60030010), propget]
1537 HRESULT State(
1538 [out, retval] LONG *state);
1540 [id(0x60030011)]
1541 HRESULT Cancel();
1545 uuid(b08400bd-f9d1-4d02-b856-71d5dba123e9),
1546 odl,
1547 dual,
1548 nonextensible,
1549 oleautomation
1551 interface _Command : Command25
1553 [id(0x60030012), propputref]
1554 HRESULT CommandStream(
1555 [in] IUnknown *stream);
1557 [id(0x60030012), propget]
1558 HRESULT CommandStream(
1559 [out, retval] VARIANT *stream);
1561 [id(0x60030013), propput]
1562 HRESULT Dialect(
1563 [in] BSTR dialect);
1565 [id(0x60030013), propget]
1566 HRESULT Dialect(
1567 [out, retval] BSTR *dialect);
1569 [id(0x60030014), propput]
1570 HRESULT NamedParameters(
1571 [in] VARIANT_BOOL named_parameters);
1573 [id(0x60030014), propget]
1574 HRESULT NamedParameters(
1575 [out, retval] VARIANT_BOOL *named_parameters);
1579 uuid(00000400-0000-0010-8000-00aa006d2ea4)
1581 dispinterface ConnectionEvents
1583 properties:
1584 methods:
1585 [id(00000000)]
1586 HRESULT InfoMessage(
1587 [in] Error *error,
1588 [in, out] EventStatusEnum *status,
1589 [in] _Connection *Connection);
1591 [id(0x00000001)]
1592 HRESULT BeginTransComplete(
1593 [in] LONG TransactionLevel,
1594 [in] Error *error,
1595 [in, out] EventStatusEnum *status,
1596 [in] _Connection *connection);
1598 [id(0x00000003)]
1599 HRESULT CommitTransComplete(
1600 [in] Error *error,
1601 [in, out] EventStatusEnum *status,
1602 [in] _Connection *connection);
1604 [id(0x00000002)]
1605 HRESULT RollbackTransComplete(
1606 [in] Error *error,
1607 [in, out] EventStatusEnum *status,
1608 [in] _Connection *connection);
1610 [id(0x00000004)]
1611 HRESULT WillExecute(
1612 [in, out] BSTR *source,
1613 [in, out] CursorTypeEnum *cursor_type,
1614 [in, out] LockTypeEnum *lock_type,
1615 [in, out] LONG *options,
1616 [in, out] EventStatusEnum *status,
1617 [in] _Command *command,
1618 [in] _Recordset *record_set,
1619 [in] _Connection *connection);
1621 [id(0x00000005)]
1622 HRESULT ExecuteComplete(
1623 [in] LONG records_affected,
1624 [in] Error *error,
1625 [in, out] EventStatusEnum *status,
1626 [in] _Command *command,
1627 [in] _Recordset *record_set,
1628 [in] _Connection *connection);
1630 [id(0x00000006)]
1631 HRESULT WillConnect(
1632 [in, out] BSTR *string,
1633 [in, out] BSTR *userid,
1634 [in, out] BSTR *password,
1635 [in, out] LONG *options,
1636 [in, out] EventStatusEnum *status,
1637 [in] _Connection *connection);
1639 [id(0x00000007)]
1640 HRESULT ConnectComplete(
1641 [in] Error *error,
1642 [in, out] EventStatusEnum *status,
1643 [in] _Connection *connection);
1645 [id(0x00000008)]
1646 HRESULT Disconnect(
1647 [in, out] EventStatusEnum *status,
1648 [in] _Connection *connection);
1652 uuid(00000562-0000-0010-8000-00aa006d2ea4),
1653 odl,
1654 dual,
1655 nonextensible,
1656 oleautomation
1658 interface _Record : _ADO
1660 [id(1), propget]
1661 HRESULT ActiveConnection(
1662 [out, retval] VARIANT *connection);
1664 [id(1), propput]
1665 HRESULT ActiveConnection(
1666 [in] BSTR connection);
1668 [id(1), propputref]
1669 HRESULT ActiveConnection(
1670 [in] _Connection *connection);
1672 [id(2), propget]
1673 HRESULT State(
1674 [out, retval] ObjectStateEnum *state);
1676 [id(3), propget]
1677 HRESULT Source(
1678 [out, retval] VARIANT *source);
1680 [id(3), propput]
1681 HRESULT Source(
1682 [in] BSTR source);
1684 [id(3), propputref]
1685 HRESULT Source(
1686 [in] IDispatch *source);
1688 [id(4), propget]
1689 HRESULT Mode(
1690 [out, retval] ConnectModeEnum *mode);
1692 [id(4), propput]
1693 HRESULT Mode(
1694 [in] ConnectModeEnum mode);
1696 [id(5), propget]
1697 HRESULT ParentURL(
1698 [out, retval] BSTR *parent_URL);
1700 [id(6)]
1701 HRESULT MoveRecord(
1702 [in, defaultvalue("")] BSTR source,
1703 [in, defaultvalue("")] BSTR Destination,
1704 [in, optional] BSTR UserName,
1705 [in, optional] BSTR Password,
1706 [in, defaultvalue(adMoveUnspecified)] MoveRecordOptionsEnum Options,
1707 [in, optional] VARIANT_BOOL Async,
1708 [out, retval] BSTR *pbstrNewURL);
1710 [id(7)]
1711 HRESULT CopyRecord(
1712 [in, defaultvalue("")] BSTR source,
1713 [in, defaultvalue("")] BSTR destination,
1714 [in, optional] BSTR username,
1715 [in, optional] BSTR password,
1716 [in, defaultvalue(adCopyUnspecified)] CopyRecordOptionsEnum options,
1717 [in, optional] VARIANT_BOOL async,
1718 [out, retval] BSTR *new_URL);
1720 [id(8)]
1721 HRESULT DeleteRecord(
1722 [in] BSTR source,
1723 [in, optional] VARIANT_BOOL async);
1725 [id(9)]
1726 HRESULT Open(
1727 [in, optional] VARIANT source,
1728 [in, optional] VARIANT active_connection,
1729 [in, optional] ConnectModeEnum mode,
1730 [in, defaultvalue(adFailIfNotExists)] RecordCreateOptionsEnum create_options,
1731 [in, defaultvalue(adOpenRecordUnspecified)] RecordOpenOptionsEnum options,
1732 [in, optional] BSTR username,
1733 [in, optional] BSTR password);
1735 [id(10)]
1736 HRESULT Close();
1738 [id(0), propget]
1739 HRESULT Fields(
1740 [out, retval] Fields **fields);
1742 [id(11), propget]
1743 HRESULT RecordType(
1744 [out, retval] RecordTypeEnum *type);
1746 [id(12)]
1747 HRESULT GetChildren(
1748 [out, retval] _Recordset **record_set);
1750 [id(13)]
1751 HRESULT Cancel();
1755 uuid(00000565-0000-0010-8000-00aa006d2ea4),
1756 odl,
1757 dual,
1758 nonextensible,
1759 oleautomation
1761 interface _Stream : IDispatch
1763 [id(1), propget]
1764 HRESULT Size(
1765 [out, retval] LONG *size);
1767 [id(2), propget]
1768 HRESULT EOS(
1769 [out, retval] VARIANT_BOOL *eos);
1771 [id(3), propget]
1772 HRESULT Position(
1773 [out, retval] LONG *position);
1775 [id(3), propput]
1776 HRESULT Position(
1777 [in] LONG position);
1779 [id(4), propget]
1780 HRESULT Type(
1781 [out, retval] StreamTypeEnum *type);
1783 [id(4), propput]
1784 HRESULT Type(
1785 [in] StreamTypeEnum type);
1787 [id(5), propget]
1788 HRESULT LineSeparator(
1789 [out, retval] LineSeparatorEnum *separator);
1791 [id(5), propput]
1792 HRESULT LineSeparator(
1793 [in] LineSeparatorEnum separator);
1795 [id(6), propget]
1796 HRESULT State(
1797 [out, retval] ObjectStateEnum *state);
1799 [id(7), propget]
1800 HRESULT Mode(
1801 [out, retval] ConnectModeEnum *mode);
1803 [id(7), propput]
1804 HRESULT Mode(
1805 [in] ConnectModeEnum mode);
1807 [id(8), propget]
1808 HRESULT Charset(
1809 [out, retval] BSTR *charset);
1811 [id(8), propput]
1812 HRESULT Charset(
1813 [in] BSTR charset);
1815 [id(9)]
1816 HRESULT Read(
1817 [in, defaultvalue(adReadAll)] LONG num_bytes,
1818 [out, retval] VARIANT *val);
1820 [id(10)]
1821 HRESULT Open(
1822 [in, optional] VARIANT source,
1823 [in, defaultvalue(adModeUnknown)] ConnectModeEnum mode,
1824 [in, defaultvalue(adOpenStreamUnspecified)] StreamOpenOptionsEnum options,
1825 [in, optional] BSTR username,
1826 [in, optional] BSTR password);
1828 [id(11)]
1829 HRESULT Close(void);
1831 [id(12)]
1832 HRESULT SkipLine(void);
1834 [id(13)]
1835 HRESULT Write(
1836 [in] VARIANT buffer);
1838 [id(14)]
1839 HRESULT SetEOS(void);
1841 [id(15)]
1842 HRESULT CopyTo(
1843 [in] _Stream *dest,
1844 [in, defaultvalue(-1)] LONG size);
1846 [id(16)]
1847 HRESULT Flush(void);
1849 [id(17)]
1850 HRESULT SaveToFile(
1851 [in] BSTR FileName,
1852 [in, defaultvalue(adSaveCreateNotExist)] SaveOptionsEnum options);
1854 [id(18)]
1855 HRESULT LoadFromFile(
1856 [in] BSTR filename);
1858 [id(19)]
1859 HRESULT ReadText(
1860 [in, defaultvalue(adReadAll)] LONG size,
1861 [out, retval] BSTR *str);
1863 [id(20)]
1864 HRESULT WriteText(
1865 [in] BSTR data,
1866 [in, defaultvalue(adWriteChar)] StreamWriteEnum options);
1868 [id(21)]
1869 HRESULT Cancel(void);
1873 uuid(00000266-0000-0010-8000-00aa006d2ea4)
1875 dispinterface RecordsetEvents
1877 properties:
1878 methods:
1879 [id(0x00000009)]
1880 HRESULT WillChangeField(
1881 [in] LONG count,
1882 [in] VARIANT fields,
1883 [in, out] EventStatusEnum *status,
1884 [in] _Recordset *record_set);
1886 [id(0x0000000a)]
1887 HRESULT FieldChangeComplete(
1888 [in] LONG count,
1889 [in] VARIANT fields,
1890 [in] Error *error,
1891 [in, out] EventStatusEnum *status,
1892 [in] _Recordset *record_set);
1894 [id(0x0000000b)]
1895 HRESULT WillChangeRecord(
1896 [in] EventReasonEnum reason,
1897 [in] LONG count,
1898 [in, out] EventStatusEnum *status,
1899 [in] _Recordset *record_set);
1901 [id(0x0000000c)]
1902 HRESULT RecordChangeComplete(
1903 [in] EventReasonEnum reason,
1904 [in] LONG count,
1905 [in] Error *error,
1906 [in, out] EventStatusEnum *status,
1907 [in] _Recordset *record_set);
1909 [id(0x0000000d)]
1910 HRESULT WillChangeRecordset(
1911 [in] EventReasonEnum reason,
1912 [in, out] EventStatusEnum *status,
1913 [in] _Recordset *record_set);
1915 [id(0x0000000e)]
1916 HRESULT RecordsetChangeComplete(
1917 [in] EventReasonEnum reason,
1918 [in] Error *error,
1919 [in, out] EventStatusEnum *status,
1920 [in] _Recordset *record_set);
1922 [id(0x0000000f)]
1923 HRESULT WillMove(
1924 [in] EventReasonEnum reason,
1925 [in, out] EventStatusEnum *status,
1926 [in] _Recordset *record_set);
1928 [id(0x00000010)]
1929 HRESULT MoveComplete(
1930 [in] EventReasonEnum reason,
1931 [in] Error *error,
1932 [in, out] EventStatusEnum *status,
1933 [in] _Recordset *record_set);
1935 [id(0x00000011)]
1936 HRESULT EndOfRecordset(
1937 [in, out] VARIANT_BOOL *more_data,
1938 [in, out] EventStatusEnum *status,
1939 [in] _Recordset *record_set);
1941 [id(0x00000012)]
1942 HRESULT FetchProgress(
1943 [in] LONG progress,
1944 [in] LONG max_progress,
1945 [in, out] EventStatusEnum *status,
1946 [in] _Recordset *record_set);
1948 [id(0x00000013)]
1949 HRESULT FetchComplete(
1950 [in] Error *error,
1951 [in, out] EventStatusEnum *status,
1952 [in] _Recordset *record_set);
1956 uuid(00000538-0000-0010-8000-00aa006d2ea4),
1957 odl,
1958 hidden
1960 interface ADODebugging : IUnknown
1962 HRESULT IsGlobalDebugMode(
1963 VARIANT_BOOL *debugging_on);
1965 HRESULT SetGlobalDebugMode(
1966 IUnknown *debugger,
1967 VARIANT_BOOL debugging_on);
1971 uuid(00000516-0000-0010-8000-00aa006d2ea4),
1972 odl,
1973 restricted
1975 interface ADOConnectionConstruction15 : IUnknown
1977 [propget]
1978 HRESULT DSO(
1979 [out, retval] IUnknown **dso);
1981 [propget]
1982 HRESULT Session(
1983 [out, retval] IUnknown **session);
1985 HRESULT WrapDSOandSession(
1986 [in] IUnknown *dso,
1987 [in] IUnknown *session);
1991 uuid(00000551-0000-0010-8000-00aa006d2ea4),
1992 odl,
1993 restricted
1995 interface ADOConnectionConstruction : ADOConnectionConstruction15
2000 uuid(00000517-0000-0010-8000-00aa006d2ea4),
2001 odl,
2002 restricted
2004 interface ADOCommandConstruction : IUnknown
2006 [propget]
2007 HRESULT OLEDBCommand(
2008 [out, retval] IUnknown **command);
2010 [propput]
2011 HRESULT OLEDBCommand(
2012 [in] IUnknown *command);
2016 uuid(00000283-0000-0010-8000-00aa006d2ea4),
2017 odl,
2018 restricted
2020 interface ADORecordsetConstruction : IDispatch
2022 [propget]
2023 HRESULT Rowset(
2024 [out, retval] IUnknown **row_set);
2026 [propput]
2027 HRESULT Rowset(
2028 [in] IUnknown *row_set);
2030 [propget]
2031 HRESULT Chapter(
2032 [out, retval] LONG *chapter);
2034 [propput]
2035 HRESULT Chapter(
2036 [in] LONG chapter);
2038 [propget]
2039 HRESULT RowPosition(
2040 [out, retval] IUnknown **row_pos);
2042 [propput]
2043 HRESULT RowPosition(
2044 [in] IUnknown *row_pos);
2048 uuid(2a75196c-d9eb-4129-b803-931327f72d5c),
2049 version(2.8)
2051 library ADODB
2053 importlib("stdole2.tlb");
2056 uuid(00000514-0000-0010-8000-00aa006d2ea4),
2058 coclass Connection
2060 [default] interface _Connection;
2061 [default, source] dispinterface ConnectionEvents;
2065 uuid(00000507-0000-0010-8000-00aa006d2ea4),
2067 coclass Command
2069 [default] interface _Command;
2073 uuid(00000535-0000-0010-8000-00aa006d2ea4),
2075 coclass Recordset
2077 [default] interface _Recordset;
2078 [default, source] dispinterface RecordsetEvents;
2082 uuid(0000050b-0000-0010-8000-00aa006d2ea4),
2084 coclass Parameter
2086 [default] interface _Parameter;
2090 uuid(00000560-0000-0010-8000-00aa006d2ea4),
2092 coclass Record
2094 [default] interface _Record;
2098 uuid(00000566-0000-0010-8000-00aa006d2ea4),
2100 coclass Stream
2102 [default] interface _Stream;