home *** CD-ROM | disk | FTP | other *** search
/ QBasic & Borland Pascal & C / Delphi5.iso / Runimage / Delphi50 / Demos / Ado / Rds / adodb_tlb.pas next >
Encoding:
Pascal/Delphi Source File  |  1999-08-11  |  124.1 KB  |  2,056 lines

  1. unit ADODB_TLB;
  2.  
  3. // ************************************************************************ //
  4. // WARNING                                                                    
  5. // -------                                                                    
  6. // The types declared in this file were generated from data read from a       
  7. // Type Library. If this type library is explicitly or indirectly (via        
  8. // another type library referring to this type library) re-imported, or the   
  9. // 'Refresh' command of the Type Library Editor activated while editing the   
  10. // Type Library, the contents of this file will be regenerated and all        
  11. // manual modifications will be lost.                                         
  12. // ************************************************************************ //
  13.  
  14. // PASTLWTR : $Revision:   1.79  $
  15. // File generated on 6/24/99 8:08:50 AM from Type Library described below.
  16.  
  17. // ************************************************************************ //
  18. // Type Lib: C:\PROGRAM FILES\COMMON FILES\SYSTEM\ADO\msado15.dll (1)
  19. // IID\LCID: {00000201-0000-0010-8000-00AA006D2EA4}\0
  20. // Helpfile: C:\PROGRAM FILES\COMMON FILES\SYSTEM\ADO\ado210.chm
  21. // DepndLst: 
  22. //   (1) v2.0 stdole, (C:\WINDOWS\SYSTEM\STDOLE2.TLB)
  23. // Parent TypeLibrary:
  24. //   (0) v1.0 RServer, (D:\ADO\demos\RDS\RDSServer.tlb)
  25. // Errors:
  26. //   Hint: Member 'Disconnect' of 'ConnectionEventsVt' changed to 'Disconnect1'
  27. //   Hint: Member 'Disconnect' of 'ConnectionEvents' changed to 'Disconnect1'
  28. //   Hint: TypeInfo 'Property' changed to 'Property_'
  29. //   Hint: Parameter 'Object' of _DynaCollection.Append changed to 'Object_'
  30. //   Hint: Member 'Type' of 'Property' changed to 'Type_'
  31. //   Hint: Parameter 'Type' of Command15.CreateParameter changed to 'Type_'
  32. //   Hint: Parameter 'Type' of Fields.Append changed to 'Type_'
  33. //   Hint: Member 'Type' of 'Field' changed to 'Type_'
  34. //   Hint: Member 'Type' of '_Parameter' changed to 'Type_'
  35. //   Hint: Member 'Type' of 'Field15' changed to 'Type_'
  36. // ************************************************************************ //
  37. interface
  38.  
  39. uses Windows, ActiveX, Classes, Graphics, OleServer, OleCtrls, StdVCL;
  40.  
  41. // *********************************************************************//
  42. // GUIDS declared in the TypeLibrary. Following prefixes are used:        
  43. //   Type Libraries     : LIBID_xxxx                                      
  44. //   CoClasses          : CLASS_xxxx                                      
  45. //   DISPInterfaces     : DIID_xxxx                                       
  46. //   Non-DISP interfaces: IID_xxxx                                        
  47. // *********************************************************************//
  48. const
  49.   // TypeLibrary Major and minor versions
  50.   ADODBMajorVersion = 2;
  51.   ADODBMinorVersion = 1;
  52.  
  53.   LIBID_ADODB: TGUID = '{00000201-0000-0010-8000-00AA006D2EA4}';
  54.  
  55.   IID__Collection: TGUID = '{00000512-0000-0010-8000-00AA006D2EA4}';
  56.   IID__DynaCollection: TGUID = '{00000513-0000-0010-8000-00AA006D2EA4}';
  57.   IID__ADO: TGUID = '{00000534-0000-0010-8000-00AA006D2EA4}';
  58.   IID_Properties: TGUID = '{00000504-0000-0010-8000-00AA006D2EA4}';
  59.   IID_Property_: TGUID = '{00000503-0000-0010-8000-00AA006D2EA4}';
  60.   IID_Error: TGUID = '{00000500-0000-0010-8000-00AA006D2EA4}';
  61.   IID_Errors: TGUID = '{00000501-0000-0010-8000-00AA006D2EA4}';
  62.   IID_Command15: TGUID = '{00000508-0000-0010-8000-00AA006D2EA4}';
  63.   IID_Connection15: TGUID = '{00000515-0000-0010-8000-00AA006D2EA4}';
  64.   IID__Connection: TGUID = '{00000550-0000-0010-8000-00AA006D2EA4}';
  65.   IID_Recordset15: TGUID = '{0000050E-0000-0010-8000-00AA006D2EA4}';
  66.   IID_Recordset20: TGUID = '{0000054F-0000-0010-8000-00AA006D2EA4}';
  67.   IID__Recordset: TGUID = '{00000555-0000-0010-8000-00AA006D2EA4}';
  68.   IID_Fields15: TGUID = '{00000506-0000-0010-8000-00AA006D2EA4}';
  69.   IID_Fields: TGUID = '{0000054D-0000-0010-8000-00AA006D2EA4}';
  70.   IID_Field: TGUID = '{0000054C-0000-0010-8000-00AA006D2EA4}';
  71.   IID__Parameter: TGUID = '{0000050C-0000-0010-8000-00AA006D2EA4}';
  72.   IID_Parameters: TGUID = '{0000050D-0000-0010-8000-00AA006D2EA4}';
  73.   IID__Command: TGUID = '{0000054E-0000-0010-8000-00AA006D2EA4}';
  74.   IID_ConnectionEventsVt: TGUID = '{00000402-0000-0010-8000-00AA006D2EA4}';
  75.   IID_RecordsetEventsVt: TGUID = '{00000403-0000-0010-8000-00AA006D2EA4}';
  76.   DIID_ConnectionEvents: TGUID = '{00000400-0000-0010-8000-00AA006D2EA4}';
  77.   DIID_RecordsetEvents: TGUID = '{00000266-0000-0010-8000-00AA006D2EA4}';
  78.   IID_ADOConnectionConstruction15: TGUID = '{00000516-0000-0010-8000-00AA006D2EA4}';
  79.   IID_ADOConnectionConstruction: TGUID = '{00000551-0000-0010-8000-00AA006D2EA4}';
  80.   CLASS_Connection: TGUID = '{00000514-0000-0010-8000-00AA006D2EA4}';
  81.   IID_ADOCommandConstruction: TGUID = '{00000517-0000-0010-8000-00AA006D2EA4}';
  82.   CLASS_Command: TGUID = '{00000507-0000-0010-8000-00AA006D2EA4}';
  83.   CLASS_Recordset: TGUID = '{00000535-0000-0010-8000-00AA006D2EA4}';
  84.   IID_ADORecordsetConstruction: TGUID = '{00000283-0000-0010-8000-00AA006D2EA4}';
  85.   IID_Field15: TGUID = '{00000505-0000-0010-8000-00AA006D2EA4}';
  86.   CLASS_Parameter: TGUID = '{0000050B-0000-0010-8000-00AA006D2EA4}';
  87.  
  88. // *********************************************************************//
  89. // Declaration of Enumerations defined in Type Library                    
  90. // *********************************************************************//
  91. // CursorTypeEnum constants
  92. type
  93.   CursorTypeEnum = TOleEnum;
  94. const
  95.   adOpenUnspecified = $FFFFFFFF;
  96.   adOpenForwardOnly = $00000000;
  97.   adOpenKeyset = $00000001;
  98.   adOpenDynamic = $00000002;
  99.   adOpenStatic = $00000003;
  100.  
  101. // CursorOptionEnum constants
  102. type
  103.   CursorOptionEnum = TOleEnum;
  104. const
  105.   adHoldRecords = $00000100;
  106.   adMovePrevious = $00000200;
  107.   adAddNew = $01000400;
  108.   adDelete = $01000800;
  109.   adUpdate = $01008000;
  110.   adBookmark = $00002000;
  111.   adApproxPosition = $00004000;
  112.   adUpdateBatch = $00010000;
  113.   adResync = $00020000;
  114.   adNotify = $00040000;
  115.   adFind = $00080000;
  116.   adSeek = $00400000;
  117.   adIndex = $00800000;
  118.  
  119. // LockTypeEnum constants
  120. type
  121.   LockTypeEnum = TOleEnum;
  122. const
  123.   adLockUnspecified = $FFFFFFFF;
  124.   adLockReadOnly = $00000001;
  125.   adLockPessimistic = $00000002;
  126.   adLockOptimistic = $00000003;
  127.   adLockBatchOptimistic = $00000004;
  128.  
  129. // ExecuteOptionEnum constants
  130. type
  131.   ExecuteOptionEnum = TOleEnum;
  132. const
  133.   adOptionUnspecified = $FFFFFFFF;
  134.   adAsyncExecute = $00000010;
  135.   adAsyncFetch = $00000020;
  136.   adAsyncFetchNonBlocking = $00000040;
  137.   adExecuteNoRecords = $00000080;
  138.  
  139. // ConnectOptionEnum constants
  140. type
  141.   ConnectOptionEnum = TOleEnum;
  142. const
  143.   adConnectUnspecified = $FFFFFFFF;
  144.   adAsyncConnect = $00000010;
  145.  
  146. // ObjectStateEnum constants
  147. type
  148.   ObjectStateEnum = TOleEnum;
  149. const
  150.   adStateClosed = $00000000;
  151.   adStateOpen = $00000001;
  152.   adStateConnecting = $00000002;
  153.   adStateExecuting = $00000004;
  154.   adStateFetching = $00000008;
  155.  
  156. // CursorLocationEnum constants
  157. type
  158.   CursorLocationEnum = TOleEnum;
  159. const
  160.   adUseNone = $00000001;
  161.   adUseServer = $00000002;
  162.   adUseClient = $00000003;
  163.   adUseClientBatch = $00000003;
  164.  
  165. // DataTypeEnum constants
  166. type
  167.   DataTypeEnum = TOleEnum;
  168. const
  169.   adEmpty = $00000000;
  170.   adTinyInt = $00000010;
  171.   adSmallInt = $00000002;
  172.   adInteger = $00000003;
  173.   adBigInt = $00000014;
  174.   adUnsignedTinyInt = $00000011;
  175.   adUnsignedSmallInt = $00000012;
  176.   adUnsignedInt = $00000013;
  177.   adUnsignedBigInt = $00000015;
  178.   adSingle = $00000004;
  179.   adDouble = $00000005;
  180.   adCurrency = $00000006;
  181.   adDecimal = $0000000E;
  182.   adNumeric = $00000083;
  183.   adBoolean = $0000000B;
  184.   adError = $0000000A;
  185.   adUserDefined = $00000084;
  186.   adVariant = $0000000C;
  187.   adIDispatch = $00000009;
  188.   adIUnknown = $0000000D;
  189.   adGUID = $00000048;
  190.   adDate = $00000007;
  191.   adDBDate = $00000085;
  192.   adDBTime = $00000086;
  193.   adDBTimeStamp = $00000087;
  194.   adBSTR = $00000008;
  195.   adChar = $00000081;
  196.   adVarChar = $000000C8;
  197.   adLongVarChar = $000000C9;
  198.   adWChar = $00000082;
  199.   adVarWChar = $000000CA;
  200.   adLongVarWChar = $000000CB;
  201.   adBinary = $00000080;
  202.   adVarBinary = $000000CC;
  203.   adLongVarBinary = $000000CD;
  204.   adChapter = $00000088;
  205.   adFileTime = $00000040;
  206.   adDBFileTime = $00000089;
  207.   adPropVariant = $0000008A;
  208.   adVarNumeric = $0000008B;
  209.  
  210. // FieldAttributeEnum constants
  211. type
  212.   FieldAttributeEnum = TOleEnum;
  213. const
  214.   adFldUnspecified = $FFFFFFFF;
  215.   adFldMayDefer = $00000002;
  216.   adFldUpdatable = $00000004;
  217.   adFldUnknownUpdatable = $00000008;
  218.   adFldFixed = $00000010;
  219.   adFldIsNullable = $00000020;
  220.   adFldMayBeNull = $00000040;
  221.   adFldLong = $00000080;
  222.   adFldRowID = $00000100;
  223.   adFldRowVersion = $00000200;
  224.   adFldCacheDeferred = $00001000;
  225.   adFldNegativeScale = $00004000;
  226.   adFldKeyColumn = $00008000;
  227.  
  228. // EditModeEnum constants
  229. type
  230.   EditModeEnum = TOleEnum;
  231. const
  232.   adEditNone = $00000000;
  233.   adEditInProgress = $00000001;
  234.   adEditAdd = $00000002;
  235.   adEditDelete = $00000004;
  236.  
  237. // RecordStatusEnum constants
  238. type
  239.   RecordStatusEnum = TOleEnum;
  240. const
  241.   adRecOK = $00000000;
  242.   adRecNew = $00000001;
  243.   adRecModified = $00000002;
  244.   adRecDeleted = $00000004;
  245.   adRecUnmodified = $00000008;
  246.   adRecInvalid = $00000010;
  247.   adRecMultipleChanges = $00000040;
  248.   adRecPendingChanges = $00000080;
  249.   adRecCanceled = $00000100;
  250.   adRecCantRelease = $00000400;
  251.   adRecConcurrencyViolation = $00000800;
  252.   adRecIntegrityViolation = $00001000;
  253.   adRecMaxChangesExceeded = $00002000;
  254.   adRecObjectOpen = $00004000;
  255.   adRecOutOfMemory = $00008000;
  256.   adRecPermissionDenied = $00010000;
  257.   adRecSchemaViolation = $00020000;
  258.   adRecDBDeleted = $00040000;
  259.  
  260. // GetRowsOptionEnum constants
  261. type
  262.   GetRowsOptionEnum = TOleEnum;
  263. const
  264.   adGetRowsRest = $FFFFFFFF;
  265.  
  266. // PositionEnum constants
  267. type
  268.   PositionEnum = TOleEnum;
  269. const
  270.   adPosUnknown = $FFFFFFFF;
  271.   adPosBOF = $FFFFFFFE;
  272.   adPosEOF = $FFFFFFFD;
  273.  
  274. // BookmarkEnum constants
  275. type
  276.   BookmarkEnum = TOleEnum;
  277. const
  278.   adBookmarkCurrent = $00000000;
  279.   adBookmarkFirst = $00000001;
  280.   adBookmarkLast = $00000002;
  281.  
  282. // MarshalOptionsEnum constants
  283. type
  284.   MarshalOptionsEnum = TOleEnum;
  285. const
  286.   adMarshalAll = $00000000;
  287.   adMarshalModifiedOnly = $00000001;
  288.  
  289. // AffectEnum constants
  290. type
  291.   AffectEnum = TOleEnum;
  292. const
  293.   adAffectCurrent = $00000001;
  294.   adAffectGroup = $00000002;
  295.   adAffectAll = $00000003;
  296.   adAffectAllChapters = $00000004;
  297.  
  298. // ResyncEnum constants
  299. type
  300.   ResyncEnum = TOleEnum;
  301. const
  302.   adResyncUnderlyingValues = $00000001;
  303.   adResyncAllValues = $00000002;
  304.  
  305. // CompareEnum constants
  306. type
  307.   CompareEnum = TOleEnum;
  308. const
  309.   adCompareLessThan = $00000000;
  310.   adCompareEqual = $00000001;
  311.   adCompareGreaterThan = $00000002;
  312.   adCompareNotEqual = $00000003;
  313.   adCompareNotComparable = $00000004;
  314.  
  315. // FilterGroupEnum constants
  316. type
  317.   FilterGroupEnum = TOleEnum;
  318. const
  319.   adFilterNone = $00000000;
  320.   adFilterPendingRecords = $00000001;
  321.   adFilterAffectedRecords = $00000002;
  322.   adFilterFetchedRecords = $00000003;
  323.   adFilterPredicate = $00000004;
  324.   adFilterConflictingRecords = $00000005;
  325.  
  326. // SearchDirectionEnum constants
  327. type
  328.   SearchDirectionEnum = TOleEnum;
  329. const
  330.   adSearchForward = $00000001;
  331.   adSearchBackward = $FFFFFFFF;
  332.  
  333. // PersistFormatEnum constants
  334. type
  335.   PersistFormatEnum = TOleEnum;
  336. const
  337.   adPersistADTG = $00000000;
  338.   adPersistXML = $00000001;
  339.  
  340. // StringFormatEnum constants
  341. type
  342.   StringFormatEnum = TOleEnum;
  343. const
  344.   adClipString = $00000002;
  345.  
  346. // ConnectPromptEnum constants
  347. type
  348.   ConnectPromptEnum = TOleEnum;
  349. const
  350.   adPromptAlways = $00000001;
  351.   adPromptComplete = $00000002;
  352.   adPromptCompleteRequired = $00000003;
  353.   adPromptNever = $00000004;
  354.  
  355. // ConnectModeEnum constants
  356. type
  357.   ConnectModeEnum = TOleEnum;
  358. const
  359.   adModeUnknown = $00000000;
  360.   adModeRead = $00000001;
  361.   adModeWrite = $00000002;
  362.   adModeReadWrite = $00000003;
  363.   adModeShareDenyRead = $00000004;
  364.   adModeShareDenyWrite = $00000008;
  365.   adModeShareExclusive = $0000000C;
  366.   adModeShareDenyNone = $00000010;
  367.  
  368. // IsolationLevelEnum constants
  369. type
  370.   IsolationLevelEnum = TOleEnum;
  371. const
  372.   adXactUnspecified = $FFFFFFFF;
  373.   adXactChaos = $00000010;
  374.   adXactReadUncommitted = $00000100;
  375.   adXactBrowse = $00000100;
  376.   adXactCursorStability = $00001000;
  377.   adXactReadCommitted = $00001000;
  378.   adXactRepeatableRead = $00010000;
  379.   adXactSerializable = $00100000;
  380.   adXactIsolated = $00100000;
  381.  
  382. // XactAttributeEnum constants
  383. type
  384.   XactAttributeEnum = TOleEnum;
  385. const
  386.   adXactCommitRetaining = $00020000;
  387.   adXactAbortRetaining = $00040000;
  388.   adXactAsyncPhaseOne = $00080000;
  389.   adXactSyncPhaseOne = $00100000;
  390.  
  391. // PropertyAttributesEnum constants
  392. type
  393.   PropertyAttributesEnum = TOleEnum;
  394. const
  395.   adPropNotSupported = $00000000;
  396.   adPropRequired = $00000001;
  397.   adPropOptional = $00000002;
  398.   adPropRead = $00000200;
  399.   adPropWrite = $00000400;
  400.  
  401. // ErrorValueEnum constants
  402. type
  403.   ErrorValueEnum = TOleEnum;
  404. const
  405.   adErrInvalidArgument = $00000BB9;
  406.   adErrNoCurrentRecord = $00000BCD;
  407.   adErrIllegalOperation = $00000C93;
  408.   adErrInTransaction = $00000CAE;
  409.   adErrFeatureNotAvailable = $00000CB3;
  410.   adErrItemNotFound = $00000CC1;
  411.   adErrObjectInCollection = $00000D27;
  412.   adErrObjectNotSet = $00000D5C;
  413.   adErrDataConversion = $00000D5D;
  414.   adErrObjectClosed = $00000E78;
  415.   adErrObjectOpen = $00000E79;
  416.   adErrProviderNotFound = $00000E7A;
  417.   adErrBoundToCommand = $00000E7B;
  418.   adErrInvalidParamInfo = $00000E7C;
  419.   adErrInvalidConnection = $00000E7D;
  420.   adErrNotReentrant = $00000E7E;
  421.   adErrStillExecuting = $00000E7F;
  422.   adErrOperationCancelled = $00000E80;
  423.   adErrStillConnecting = $00000E81;
  424.   adErrNotExecuting = $00000E83;
  425.   adErrUnsafeOperation = $00000E84;
  426.  
  427. // ParameterAttributesEnum constants
  428. type
  429.   ParameterAttributesEnum = TOleEnum;
  430. const
  431.   adParamSigned = $00000010;
  432.   adParamNullable = $00000040;
  433.   adParamLong = $00000080;
  434.  
  435. // ParameterDirectionEnum constants
  436. type
  437.   ParameterDirectionEnum = TOleEnum;
  438. const
  439.   adParamUnknown = $00000000;
  440.   adParamInput = $00000001;
  441.   adParamOutput = $00000002;
  442.   adParamInputOutput = $00000003;
  443.   adParamReturnValue = $00000004;
  444.  
  445. // CommandTypeEnum constants
  446. type
  447.   CommandTypeEnum = TOleEnum;
  448. const
  449.   adCmdUnspecified = $FFFFFFFF;
  450.   adCmdUnknown = $00000008;
  451.   adCmdText = $00000001;
  452.   adCmdTable = $00000002;
  453.   adCmdStoredProc = $00000004;
  454.   adCmdFile = $00000100;
  455.   adCmdTableDirect = $00000200;
  456.  
  457. // EventStatusEnum constants
  458. type
  459.   EventStatusEnum = TOleEnum;
  460. const
  461.   adStatusOK = $00000001;
  462.   adStatusErrorsOccurred = $00000002;
  463.   adStatusCantDeny = $00000003;
  464.   adStatusCancel = $00000004;
  465.   adStatusUnwantedEvent = $00000005;
  466.  
  467. // EventReasonEnum constants
  468. type
  469.   EventReasonEnum = TOleEnum;
  470. const
  471.   adRsnAddNew = $00000001;
  472.   adRsnDelete = $00000002;
  473.   adRsnUpdate = $00000003;
  474.   adRsnUndoUpdate = $00000004;
  475.   adRsnUndoAddNew = $00000005;
  476.   adRsnUndoDelete = $00000006;
  477.   adRsnRequery = $00000007;
  478.   adRsnResynch = $00000008;
  479.   adRsnClose = $00000009;
  480.   adRsnMove = $0000000A;
  481.   adRsnFirstChange = $0000000B;
  482.   adRsnMoveFirst = $0000000C;
  483.   adRsnMoveNext = $0000000D;
  484.   adRsnMovePrevious = $0000000E;
  485.   adRsnMoveLast = $0000000F;
  486.  
  487. // SchemaEnum constants
  488. type
  489.   SchemaEnum = TOleEnum;
  490. const
  491.   adSchemaProviderSpecific = $FFFFFFFF;
  492.   adSchemaAsserts = $00000000;
  493.   adSchemaCatalogs = $00000001;
  494.   adSchemaCharacterSets = $00000002;
  495.   adSchemaCollations = $00000003;
  496.   adSchemaColumns = $00000004;
  497.   adSchemaCheckConstraints = $00000005;
  498.   adSchemaConstraintColumnUsage = $00000006;
  499.   adSchemaConstraintTableUsage = $00000007;
  500.   adSchemaKeyColumnUsage = $00000008;
  501.   adSchemaReferentialContraints = $00000009;
  502.   adSchemaReferentialConstraints = $00000009;
  503.   adSchemaTableConstraints = $0000000A;
  504.   adSchemaColumnsDomainUsage = $0000000B;
  505.   adSchemaIndexes = $0000000C;
  506.   adSchemaColumnPrivileges = $0000000D;
  507.   adSchemaTablePrivileges = $0000000E;
  508.   adSchemaUsagePrivileges = $0000000F;
  509.   adSchemaProcedures = $00000010;
  510.   adSchemaSchemata = $00000011;
  511.   adSchemaSQLLanguages = $00000012;
  512.   adSchemaStatistics = $00000013;
  513.   adSchemaTables = $00000014;
  514.   adSchemaTranslations = $00000015;
  515.   adSchemaProviderTypes = $00000016;
  516.   adSchemaViews = $00000017;
  517.   adSchemaViewColumnUsage = $00000018;
  518.   adSchemaViewTableUsage = $00000019;
  519.   adSchemaProcedureParameters = $0000001A;
  520.   adSchemaForeignKeys = $0000001B;
  521.   adSchemaPrimaryKeys = $0000001C;
  522.   adSchemaProcedureColumns = $0000001D;
  523.   adSchemaDBInfoKeywords = $0000001E;
  524.   adSchemaDBInfoLiterals = $0000001F;
  525.   adSchemaCubes = $00000020;
  526.   adSchemaDimensions = $00000021;
  527.   adSchemaHierarchies = $00000022;
  528.   adSchemaLevels = $00000023;
  529.   adSchemaMeasures = $00000024;
  530.   adSchemaProperties = $00000025;
  531.   adSchemaMembers = $00000026;
  532.   adSchemaTrustees = $00000027;
  533.  
  534. // SeekEnum constants
  535. type
  536.   SeekEnum = TOleEnum;
  537. const
  538.   adSeekFirstEQ = $00000001;
  539.   adSeekLastEQ = $00000002;
  540.   adSeekAfterEQ = $00000004;
  541.   adSeekAfter = $00000008;
  542.   adSeekBeforeEQ = $00000010;
  543.   adSeekBefore = $00000020;
  544.  
  545. // ADCPROP_UPDATECRITERIA_ENUM constants
  546. type
  547.   ADCPROP_UPDATECRITERIA_ENUM = TOleEnum;
  548. const
  549.   adCriteriaKey = $00000000;
  550.   adCriteriaAllCols = $00000001;
  551.   adCriteriaUpdCols = $00000002;
  552.   adCriteriaTimeStamp = $00000003;
  553.  
  554. // ADCPROP_ASYNCTHREADPRIORITY_ENUM constants
  555. type
  556.   ADCPROP_ASYNCTHREADPRIORITY_ENUM = TOleEnum;
  557. const
  558.   adPriorityLowest = $00000001;
  559.   adPriorityBelowNormal = $00000002;
  560.   adPriorityNormal = $00000003;
  561.   adPriorityAboveNormal = $00000004;
  562.   adPriorityHighest = $00000005;
  563.  
  564. // CEResyncEnum constants
  565. type
  566.   CEResyncEnum = TOleEnum;
  567. const
  568.   adResyncNone = $00000000;
  569.   adResyncAutoIncrement = $00000001;
  570.   adResyncConflicts = $00000002;
  571.   adResyncUpdates = $00000004;
  572.   adResyncInserts = $00000008;
  573.   adResyncAll = $0000000F;
  574.  
  575. // ADCPROP_AUTORECALC_ENUM constants
  576. type
  577.   ADCPROP_AUTORECALC_ENUM = TOleEnum;
  578. const
  579.   adRecalcUpFront = $00000000;
  580.   adRecalcAlways = $00000001;
  581.  
  582. type
  583.  
  584. // *********************************************************************//
  585. // Forward declaration of types defined in TypeLibrary                    
  586. // *********************************************************************//
  587.   _Collection = interface;
  588.   _CollectionDisp = dispinterface;
  589.   _DynaCollection = interface;
  590.   _DynaCollectionDisp = dispinterface;
  591.   _ADO = interface;
  592.   _ADODisp = dispinterface;
  593.   Properties = interface;
  594.   PropertiesDisp = dispinterface;
  595.   Property_ = interface;
  596.   Property_Disp = dispinterface;
  597.   Error = interface;
  598.   ErrorDisp = dispinterface;
  599.   Errors = interface;
  600.   ErrorsDisp = dispinterface;
  601.   Command15 = interface;
  602.   Command15Disp = dispinterface;
  603.   Connection15 = interface;
  604.   Connection15Disp = dispinterface;
  605.   _Connection = interface;
  606.   _ConnectionDisp = dispinterface;
  607.   Recordset15 = interface;
  608.   Recordset15Disp = dispinterface;
  609.   Recordset20 = interface;
  610.   Recordset20Disp = dispinterface;
  611.   _Recordset = interface;
  612.   _RecordsetDisp = dispinterface;
  613.   Fields15 = interface;
  614.   Fields15Disp = dispinterface;
  615.   Fields = interface;
  616.   FieldsDisp = dispinterface;
  617.   Field = interface;
  618.   FieldDisp = dispinterface;
  619.   _Parameter = interface;
  620.   _ParameterDisp = dispinterface;
  621.   Parameters = interface;
  622.   ParametersDisp = dispinterface;
  623.   _Command = interface;
  624.   _CommandDisp = dispinterface;
  625.   ConnectionEventsVt = interface;
  626.   RecordsetEventsVt = interface;
  627.   ConnectionEvents = dispinterface;
  628.   RecordsetEvents = dispinterface;
  629.   ADOConnectionConstruction15 = interface;
  630.   ADOConnectionConstruction = interface;
  631.   ADOCommandConstruction = interface;
  632.   ADORecordsetConstruction = interface;
  633.   Field15 = interface;
  634.   Field15Disp = dispinterface;
  635.  
  636. // *********************************************************************//
  637. // Declaration of CoClasses defined in Type Library                       
  638. // (NOTE: Here we map each CoClass to its Default Interface)              
  639. // *********************************************************************//
  640.   Connection = _Connection;
  641.   Command = _Command;
  642.   Recordset = _Recordset;
  643.   Parameter = _Parameter;
  644.  
  645.  
  646. // *********************************************************************//
  647. // Declaration of structures, unions and aliases.                         
  648. // *********************************************************************//
  649.   POleVariant1 = ^OleVariant; {*}
  650.  
  651.   SearchDirection = SearchDirectionEnum; 
  652.  
  653. // *********************************************************************//
  654. // Interface: _Collection
  655. // Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
  656. // GUID:      {00000512-0000-0010-8000-00AA006D2EA4}
  657. // *********************************************************************//
  658.   _Collection = interface(IDispatch)
  659.     ['{00000512-0000-0010-8000-00AA006D2EA4}']
  660.     function  Get_Count {Flags(1), (1/0) CC:0, INV:2, DBG:6}: Integer; safecall;
  661.     function  _NewEnum {Flags(1), (1/0) CC:0, INV:1, DBG:6}: IUnknown; safecall;
  662.     procedure Refresh {Flags(1), (0/0) CC:0, INV:1, DBG:6}; safecall;
  663.     property Count: Integer read Get_Count;
  664.   end;
  665.  
  666. // *********************************************************************//
  667. // DispIntf:  _CollectionDisp
  668. // Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
  669. // GUID:      {00000512-0000-0010-8000-00AA006D2EA4}
  670. // *********************************************************************//
  671.   _CollectionDisp = dispinterface
  672.     ['{00000512-0000-0010-8000-00AA006D2EA4}']
  673.     property Count {Flags(2), (1/0) CC:0, INV:2, DBG:6}: Integer readonly dispid 1610743808;
  674.     function  _NewEnum {Flags(2), (1/0) CC:0, INV:1, DBG:4}: IUnknown; dispid -4;
  675.     procedure Refresh {Flags(2), (0/0) CC:0, INV:1, DBG:4}; dispid 1610743810;
  676.   end;
  677.  
  678. // *********************************************************************//
  679. // Interface: _DynaCollection
  680. // Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
  681. // GUID:      {00000513-0000-0010-8000-00AA006D2EA4}
  682. // *********************************************************************//
  683.   _DynaCollection = interface(_Collection)
  684.     ['{00000513-0000-0010-8000-00AA006D2EA4}']
  685.     procedure Append {Flags(1), (1/1) CC:0, INV:1, DBG:6}(const Object_: {VT_9:0}IDispatch); safecall;
  686.     procedure Delete {Flags(1), (1/1) CC:0, INV:1, DBG:6}(Index: {VT_12:0}OleVariant); safecall;
  687.   end;
  688.  
  689. // *********************************************************************//
  690. // DispIntf:  _DynaCollectionDisp
  691. // Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
  692. // GUID:      {00000513-0000-0010-8000-00AA006D2EA4}
  693. // *********************************************************************//
  694.   _DynaCollectionDisp = dispinterface
  695.     ['{00000513-0000-0010-8000-00AA006D2EA4}']
  696.     procedure Append {Flags(2), (1/1) CC:0, INV:1, DBG:4}(const Object_: {VT_9:0}IDispatch); dispid 1610809344;
  697.     procedure Delete {Flags(2), (1/1) CC:0, INV:1, DBG:4}(Index: {VT_12:0}OleVariant); dispid 1610809345;
  698.     property Count {Flags(2), (1/0) CC:0, INV:2, DBG:6}: Integer readonly dispid 1610743808;
  699.     function  _NewEnum {Flags(2), (1/0) CC:0, INV:1, DBG:4}: IUnknown; dispid -4;
  700.     procedure Refresh {Flags(2), (0/0) CC:0, INV:1, DBG:4}; dispid 1610743810;
  701.   end;
  702.  
  703. // *********************************************************************//
  704. // Interface: _ADO
  705. // Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
  706. // GUID:      {00000534-0000-0010-8000-00AA006D2EA4}
  707. // *********************************************************************//
  708.   _ADO = interface(IDispatch)
  709.     ['{00000534-0000-0010-8000-00AA006D2EA4}']
  710.     function  Get_Properties {Flags(1), (1/0) CC:0, INV:2, DBG:6}: Properties; safecall;
  711.     property Properties: Properties read Get_Properties;
  712.   end;
  713.  
  714. // *********************************************************************//
  715. // DispIntf:  _ADODisp
  716. // Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
  717. // GUID:      {00000534-0000-0010-8000-00AA006D2EA4}
  718. // *********************************************************************//
  719.   _ADODisp = dispinterface
  720.     ['{00000534-0000-0010-8000-00AA006D2EA4}']
  721.     property Properties {Flags(2), (1/0) CC:0, INV:2, DBG:6}: Properties readonly dispid 500;
  722.   end;
  723.  
  724. // *********************************************************************//
  725. // Interface: Properties
  726. // Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
  727. // GUID:      {00000504-0000-0010-8000-00AA006D2EA4}
  728. // *********************************************************************//
  729.   Properties = interface(_Collection)
  730.     ['{00000504-0000-0010-8000-00AA006D2EA4}']
  731.     function  Get_Item {Flags(1), (2/1) CC:0, INV:2, DBG:6}(Index: {VT_12:0}OleVariant): Property_; safecall;
  732.     property Item {Flags(2), (2/1) CC:0, INV:2, DBG:5}[Index: {VT_12:0}OleVariant]: Property_ read Get_Item; default;
  733.   end;
  734.  
  735. // *********************************************************************//
  736. // DispIntf:  PropertiesDisp
  737. // Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
  738. // GUID:      {00000504-0000-0010-8000-00AA006D2EA4}
  739. // *********************************************************************//
  740.   PropertiesDisp = dispinterface
  741.     ['{00000504-0000-0010-8000-00AA006D2EA4}']
  742.     property Item {Flags(2), (2/1) CC:0, INV:2, DBG:6}[Index: {VT_12:0}OleVariant]: Property_ readonly dispid 0; default;
  743.     property Count {Flags(2), (1/0) CC:0, INV:2, DBG:6}: Integer readonly dispid 1610743808;
  744.     function  _NewEnum {Flags(2), (1/0) CC:0, INV:1, DBG:4}: IUnknown; dispid -4;
  745.     procedure Refresh {Flags(2), (0/0) CC:0, INV:1, DBG:4}; dispid 1610743810;
  746.   end;
  747.  
  748. // *********************************************************************//
  749. // Interface: Property_
  750. // Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
  751. // GUID:      {00000503-0000-0010-8000-00AA006D2EA4}
  752. // *********************************************************************//
  753.   Property_ = interface(IDispatch)
  754.     ['{00000503-0000-0010-8000-00AA006D2EA4}']
  755.     function  Get_Value {Flags(1), (1/0) CC:0, INV:2, DBG:6}: OleVariant; safecall;
  756.     procedure Set_Value {Flags(1), (1/1) CC:0, INV:4, DBG:6}(pval: {VT_12:0}OleVariant); safecall;
  757.     function  Get_Name {Flags(1), (1/0) CC:0, INV:2, DBG:6}: WideString; safecall;
  758.     function  Get_Type_ {Flags(1), (1/0) CC:0, INV:2, DBG:6}: DataTypeEnum; safecall;
  759.     function  Get_Attributes {Flags(1), (1/0) CC:0, INV:2, DBG:6}: Integer; safecall;
  760.     procedure Set_Attributes {Flags(1), (1/1) CC:0, INV:4, DBG:6}(plAttributes: {VT_3:0}Integer); safecall;
  761.     property Value: OleVariant read Get_Value write Set_Value;
  762.     property Name: WideString read Get_Name;
  763.     property Type_: DataTypeEnum read Get_Type_;
  764.     property Attributes: Integer read Get_Attributes write Set_Attributes;
  765.   end;
  766.  
  767. // *********************************************************************//
  768. // DispIntf:  Property_Disp
  769. // Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
  770. // GUID:      {00000503-0000-0010-8000-00AA006D2EA4}
  771. // *********************************************************************//
  772.   Property_Disp = dispinterface
  773.     ['{00000503-0000-0010-8000-00AA006D2EA4}']
  774.     property Value {Flags(2), (1/0) CC:0, INV:2, DBG:6}: OleVariant dispid 0;
  775.     property Name {Flags(2), (1/0) CC:0, INV:2, DBG:6}: WideString readonly dispid 1610743810;
  776.     property Type_ {Flags(2), (1/0) CC:0, INV:2, DBG:6}: DataTypeEnum readonly dispid 1610743811;
  777.     property Attributes {Flags(2), (1/0) CC:0, INV:2, DBG:6}: Integer dispid 1610743812;
  778.   end;
  779.  
  780. // *********************************************************************//
  781. // Interface: Error
  782. // Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
  783. // GUID:      {00000500-0000-0010-8000-00AA006D2EA4}
  784. // *********************************************************************//
  785.   Error = interface(IDispatch)
  786.     ['{00000500-0000-0010-8000-00AA006D2EA4}']
  787.     function  Get_Number {Flags(1), (1/0) CC:0, INV:2, DBG:6}: Integer; safecall;
  788.     function  Get_Source {Flags(1), (1/0) CC:0, INV:2, DBG:6}: WideString; safecall;
  789.     function  Get_Description {Flags(1), (1/0) CC:0, INV:2, DBG:6}: WideString; safecall;
  790.     function  Get_HelpFile {Flags(1), (1/0) CC:0, INV:2, DBG:6}: WideString; safecall;
  791.     function  Get_HelpContext {Flags(1), (1/0) CC:0, INV:2, DBG:6}: Integer; safecall;
  792.     function  Get_SQLState {Flags(1), (1/0) CC:0, INV:2, DBG:6}: WideString; safecall;
  793.     function  Get_NativeError {Flags(1), (1/0) CC:0, INV:2, DBG:6}: Integer; safecall;
  794.     property Number: Integer read Get_Number;
  795.     property Source: WideString read Get_Source;
  796.     property Description: WideString read Get_Description;
  797.     property HelpFile: WideString read Get_HelpFile;
  798.     property HelpContext: Integer read Get_HelpContext;
  799.     property SQLState: WideString read Get_SQLState;
  800.     property NativeError: Integer read Get_NativeError;
  801.   end;
  802.  
  803. // *********************************************************************//
  804. // DispIntf:  ErrorDisp
  805. // Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
  806. // GUID:      {00000500-0000-0010-8000-00AA006D2EA4}
  807. // *********************************************************************//
  808.   ErrorDisp = dispinterface
  809.     ['{00000500-0000-0010-8000-00AA006D2EA4}']
  810.     property Number {Flags(2), (1/0) CC:0, INV:2, DBG:6}: Integer readonly dispid 1610743808;
  811.     property Source {Flags(2), (1/0) CC:0, INV:2, DBG:6}: WideString readonly dispid 1610743809;
  812.     property Description {Flags(2), (1/0) CC:0, INV:2, DBG:6}: WideString readonly dispid 0;
  813.     property HelpFile {Flags(2), (1/0) CC:0, INV:2, DBG:6}: WideString readonly dispid 1610743811;
  814.     property HelpContext {Flags(2), (1/0) CC:0, INV:2, DBG:6}: Integer readonly dispid 1610743812;
  815.     property SQLState {Flags(2), (1/0) CC:0, INV:2, DBG:6}: WideString readonly dispid 1610743813;
  816.     property NativeError {Flags(2), (1/0) CC:0, INV:2, DBG:6}: Integer readonly dispid 1610743814;
  817.   end;
  818.  
  819. // *********************************************************************//
  820. // Interface: Errors
  821. // Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
  822. // GUID:      {00000501-0000-0010-8000-00AA006D2EA4}
  823. // *********************************************************************//
  824.   Errors = interface(_Collection)
  825.     ['{00000501-0000-0010-8000-00AA006D2EA4}']
  826.     function  Get_Item {Flags(1), (2/1) CC:0, INV:2, DBG:6}(Index: {VT_12:0}OleVariant): Error; safecall;
  827.     procedure Clear {Flags(1), (0/0) CC:0, INV:1, DBG:6}; safecall;
  828.     property Item {Flags(2), (2/1) CC:0, INV:2, DBG:5}[Index: {VT_12:0}OleVariant]: Error read Get_Item; default;
  829.   end;
  830.  
  831. // *********************************************************************//
  832. // DispIntf:  ErrorsDisp
  833. // Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
  834. // GUID:      {00000501-0000-0010-8000-00AA006D2EA4}
  835. // *********************************************************************//
  836.   ErrorsDisp = dispinterface
  837.     ['{00000501-0000-0010-8000-00AA006D2EA4}']
  838.     property Item {Flags(2), (2/1) CC:0, INV:2, DBG:6}[Index: {VT_12:0}OleVariant]: Error readonly dispid 0; default;
  839.     procedure Clear {Flags(2), (0/0) CC:0, INV:1, DBG:4}; dispid 1610809345;
  840.     property Count {Flags(2), (1/0) CC:0, INV:2, DBG:6}: Integer readonly dispid 1610743808;
  841.     function  _NewEnum {Flags(2), (1/0) CC:0, INV:1, DBG:4}: IUnknown; dispid -4;
  842.     procedure Refresh {Flags(2), (0/0) CC:0, INV:1, DBG:4}; dispid 1610743810;
  843.   end;
  844.  
  845. // *********************************************************************//
  846. // Interface: Command15
  847. // Flags:     (4560) Hidden Dual NonExtensible OleAutomation Dispatchable
  848. // GUID:      {00000508-0000-0010-8000-00AA006D2EA4}
  849. // *********************************************************************//
  850.   Command15 = interface(_ADO)
  851.     ['{00000508-0000-0010-8000-00AA006D2EA4}']
  852.     function  Get_ActiveConnection {Flags(1), (1/0) CC:0, INV:2, DBG:6}: _Connection; safecall;
  853.     procedure Set_ActiveConnection {Flags(1), (1/1) CC:0, INV:8, DBG:6}(const ppvObject: {VT_29:1}_Connection); safecall;
  854.     procedure _Set_ActiveConnection {Flags(1), (1/1) CC:0, INV:4, DBG:6}(ppvObject: {VT_12:0}OleVariant); safecall;
  855.     function  Get_CommandText {Flags(1), (1/0) CC:0, INV:2, DBG:6}: WideString; safecall;
  856.     procedure Set_CommandText {Flags(1), (1/1) CC:0, INV:4, DBG:6}(const pbstr: {VT_8:0}WideString); safecall;
  857.     function  Get_CommandTimeout {Flags(1), (1/0) CC:0, INV:2, DBG:6}: Integer; safecall;
  858.     procedure Set_CommandTimeout {Flags(1), (1/1) CC:0, INV:4, DBG:6}(pl: {VT_3:0}Integer); safecall;
  859.     function  Get_Prepared {Flags(1), (1/0) CC:0, INV:2, DBG:6}: WordBool; safecall;
  860.     procedure Set_Prepared {Flags(1), (1/1) CC:0, INV:4, DBG:6}(pfPrepared: {VT_11:0}WordBool); safecall;
  861.     function  Execute {Flags(1), (4/3) CC:0, INV:1, DBG:6}(out RecordsAffected: {VT_12:1}OleVariant; 
  862.                                                            var Parameters: {VT_12:1}OleVariant; 
  863.                                                            Options: {VT_3:0}Integer): _Recordset; safecall;
  864.     function  CreateParameter {Flags(1), (6/5) CC:0, INV:1, DBG:6}(const Name: {VT_8:0}WideString; 
  865.                                                                    Type_: {VT_29:0}DataTypeEnum; 
  866.                                                                    Direction: {VT_29:0}ParameterDirectionEnum; 
  867.                                                                    Size: {VT_3:0}Integer; 
  868.                                                                    Value: {VT_12:0}OleVariant): _Parameter; safecall;
  869.     function  Get_Parameters {Flags(1), (1/0) CC:0, INV:2, DBG:6}: Parameters; safecall;
  870.     procedure Set_CommandType {Flags(1), (1/1) CC:0, INV:4, DBG:6}(plCmdType: {VT_29:0}CommandTypeEnum); safecall;
  871.     function  Get_CommandType {Flags(1), (1/0) CC:0, INV:2, DBG:6}: CommandTypeEnum; safecall;
  872.     function  Get_Name {Flags(1), (1/0) CC:0, INV:2, DBG:6}: WideString; safecall;
  873.     procedure Set_Name {Flags(1), (1/1) CC:0, INV:4, DBG:6}(const pbstrName: {VT_8:0}WideString); safecall;
  874.     property CommandText: WideString read Get_CommandText write Set_CommandText;
  875.     property CommandTimeout: Integer read Get_CommandTimeout write Set_CommandTimeout;
  876.     property Prepared: WordBool read Get_Prepared write Set_Prepared;
  877.     property Parameters: Parameters read Get_Parameters;
  878.     property CommandType: CommandTypeEnum read Get_CommandType write Set_CommandType;
  879.     property Name: WideString read Get_Name write Set_Name;
  880.   end;
  881.  
  882. // *********************************************************************//
  883. // DispIntf:  Command15Disp
  884. // Flags:     (4560) Hidden Dual NonExtensible OleAutomation Dispatchable
  885. // GUID:      {00000508-0000-0010-8000-00AA006D2EA4}
  886. // *********************************************************************//
  887.   Command15Disp = dispinterface
  888.     ['{00000508-0000-0010-8000-00AA006D2EA4}']
  889.     function  ActiveConnection {Flags(2), (1/0) CC:0, INV:2, DBG:4}: _Connection; dispid 1610809344;
  890.     property CommandText {Flags(2), (1/0) CC:0, INV:2, DBG:6}: WideString dispid 1610809347;
  891.     property CommandTimeout {Flags(2), (1/0) CC:0, INV:2, DBG:6}: Integer dispid 1610809349;
  892.     property Prepared {Flags(2), (1/0) CC:0, INV:2, DBG:6}: WordBool dispid 1610809351;
  893.     function  Execute {Flags(2), (4/3) CC:0, INV:1, DBG:4}(out RecordsAffected: {VT_12:1}OleVariant; 
  894.                                                            var Parameters: {VT_12:1}OleVariant; 
  895.                                                            Options: {VT_3:0}Integer): _Recordset; dispid 1610809353;
  896.     function  CreateParameter {Flags(2), (6/5) CC:0, INV:1, DBG:4}(const Name: {VT_8:0}WideString; 
  897.                                                                    Type_: {VT_29:0}DataTypeEnum; 
  898.                                                                    Direction: {VT_29:0}ParameterDirectionEnum; 
  899.                                                                    Size: {VT_3:0}Integer; 
  900.                                                                    Value: {VT_12:0}OleVariant): _Parameter; dispid 1610809354;
  901.     property Parameters {Flags(2), (1/0) CC:0, INV:2, DBG:6}: Parameters readonly dispid 0;
  902.     property CommandType {Flags(2), (1/0) CC:0, INV:4, DBG:6}: CommandTypeEnum dispid 1610809356;
  903.     property Name {Flags(2), (1/0) CC:0, INV:2, DBG:6}: WideString dispid 1610809358;
  904.     property Properties {Flags(2), (1/0) CC:0, INV:2, DBG:6}: Properties readonly dispid 500;
  905.   end;
  906.  
  907. // *********************************************************************//
  908. // Interface: Connection15
  909. // Flags:     (4432) Hidden Dual OleAutomation Dispatchable
  910. // GUID:      {00000515-0000-0010-8000-00AA006D2EA4}
  911. // *********************************************************************//
  912.   Connection15 = interface(_ADO)
  913.     ['{00000515-0000-0010-8000-00AA006D2EA4}']
  914.     function  Get_ConnectionString {Flags(1), (1/0) CC:0, INV:2, DBG:6}: WideString; safecall;
  915.     procedure Set_ConnectionString {Flags(1), (1/1) CC:0, INV:4, DBG:6}(const pbstr: {VT_8:0}WideString); safecall;
  916.     function  Get_CommandTimeout {Flags(1), (1/0) CC:0, INV:2, DBG:6}: Integer; safecall;
  917.     procedure Set_CommandTimeout {Flags(1), (1/1) CC:0, INV:4, DBG:6}(plTimeout: {VT_3:0}Integer); safecall;
  918.     function  Get_ConnectionTimeout {Flags(1), (1/0) CC:0, INV:2, DBG:6}: Integer; safecall;
  919.     procedure Set_ConnectionTimeout {Flags(1), (1/1) CC:0, INV:4, DBG:6}(plTimeout: {VT_3:0}Integer); safecall;
  920.     function  Get_Version {Flags(1), (1/0) CC:0, INV:2, DBG:6}: WideString; safecall;
  921.     procedure Close {Flags(1), (0/0) CC:0, INV:1, DBG:6}; safecall;
  922.     function  Execute {Flags(1), (4/3) CC:0, INV:1, DBG:6}(const CommandText: {VT_8:0}WideString; 
  923.                                                            out RecordsAffected: {VT_12:1}OleVariant; 
  924.                                                            Options: {VT_3:0}Integer): _Recordset; safecall;
  925.     function  BeginTrans {Flags(1), (1/0) CC:0, INV:1, DBG:6}: Integer; safecall;
  926.     procedure CommitTrans {Flags(1), (0/0) CC:0, INV:1, DBG:6}; safecall;
  927.     procedure RollbackTrans {Flags(1), (0/0) CC:0, INV:1, DBG:6}; safecall;
  928.     procedure Open {Flags(1), (4/4) CC:0, INV:1, DBG:6}(const ConnectionString: {VT_8:0}WideString; 
  929.                                                         const UserID: {VT_8:0}WideString; 
  930.                                                         const Password: {VT_8:0}WideString; 
  931.                                                         Options: {VT_3:0}Integer); safecall;
  932.     function  Get_Errors {Flags(1), (1/0) CC:0, INV:2, DBG:6}: Errors; safecall;
  933.     function  Get_DefaultDatabase {Flags(1), (1/0) CC:0, INV:2, DBG:6}: WideString; safecall;
  934.     procedure Set_DefaultDatabase {Flags(1), (1/1) CC:0, INV:4, DBG:6}(const pbstr: {VT_8:0}WideString); safecall;
  935.     function  Get_IsolationLevel {Flags(1), (1/0) CC:0, INV:2, DBG:6}: IsolationLevelEnum; safecall;
  936.     procedure Set_IsolationLevel {Flags(1), (1/1) CC:0, INV:4, DBG:6}(Level: {VT_29:0}IsolationLevelEnum); safecall;
  937.     function  Get_Attributes {Flags(1), (1/0) CC:0, INV:2, DBG:6}: Integer; safecall;
  938.     procedure Set_Attributes {Flags(1), (1/1) CC:0, INV:4, DBG:6}(plAttr: {VT_3:0}Integer); safecall;
  939.     function  Get_CursorLocation {Flags(1), (1/0) CC:0, INV:2, DBG:6}: CursorLocationEnum; safecall;
  940.     procedure Set_CursorLocation {Flags(1), (1/1) CC:0, INV:4, DBG:6}(plCursorLoc: {VT_29:0}CursorLocationEnum); safecall;
  941.     function  Get_Mode {Flags(1), (1/0) CC:0, INV:2, DBG:6}: ConnectModeEnum; safecall;
  942.     procedure Set_Mode {Flags(1), (1/1) CC:0, INV:4, DBG:6}(plMode: {VT_29:0}ConnectModeEnum); safecall;
  943.     function  Get_Provider {Flags(1), (1/0) CC:0, INV:2, DBG:6}: WideString; safecall;
  944.     procedure Set_Provider {Flags(1), (1/1) CC:0, INV:4, DBG:6}(const pbstr: {VT_8:0}WideString); safecall;
  945.     function  Get_State {Flags(1), (1/0) CC:0, INV:2, DBG:6}: Integer; safecall;
  946.     function  OpenSchema {Flags(1), (4/3) CC:0, INV:1, DBG:6}(Schema: {VT_29:0}SchemaEnum; 
  947.                                                               Restrictions: {VT_12:0}OleVariant; 
  948.                                                               SchemaID: {VT_12:0}OleVariant): _Recordset; safecall;
  949.     property ConnectionString: WideString read Get_ConnectionString write Set_ConnectionString;
  950.     property CommandTimeout: Integer read Get_CommandTimeout write Set_CommandTimeout;
  951.     property ConnectionTimeout: Integer read Get_ConnectionTimeout write Set_ConnectionTimeout;
  952.     property Version: WideString read Get_Version;
  953.     property Errors: Errors read Get_Errors;
  954.     property DefaultDatabase: WideString read Get_DefaultDatabase write Set_DefaultDatabase;
  955.     property IsolationLevel: IsolationLevelEnum read Get_IsolationLevel write Set_IsolationLevel;
  956.     property Attributes: Integer read Get_Attributes write Set_Attributes;
  957.     property CursorLocation: CursorLocationEnum read Get_CursorLocation write Set_CursorLocation;
  958.     property Mode: ConnectModeEnum read Get_Mode write Set_Mode;
  959.     property Provider: WideString read Get_Provider write Set_Provider;
  960.     property State: Integer read Get_State;
  961.   end;
  962.  
  963. // *********************************************************************//
  964. // DispIntf:  Connection15Disp
  965. // Flags:     (4432) Hidden Dual OleAutomation Dispatchable
  966. // GUID:      {00000515-0000-0010-8000-00AA006D2EA4}
  967. // *********************************************************************//
  968.   Connection15Disp = dispinterface
  969.     ['{00000515-0000-0010-8000-00AA006D2EA4}']
  970.     property ConnectionString {Flags(2), (1/0) CC:0, INV:2, DBG:6}: WideString dispid 0;
  971.     property CommandTimeout {Flags(2), (1/0) CC:0, INV:2, DBG:6}: Integer dispid 2;
  972.     property ConnectionTimeout {Flags(2), (1/0) CC:0, INV:2, DBG:6}: Integer dispid 3;
  973.     property Version {Flags(2), (1/0) CC:0, INV:2, DBG:6}: WideString readonly dispid 4;
  974.     procedure Close {Flags(2), (0/0) CC:0, INV:1, DBG:4}; dispid 5;
  975.     function  Execute {Flags(2), (4/3) CC:0, INV:1, DBG:4}(const CommandText: {VT_8:0}WideString; 
  976.                                                            out RecordsAffected: {VT_12:1}OleVariant; 
  977.                                                            Options: {VT_3:0}Integer): _Recordset; dispid 6;
  978.     function  BeginTrans {Flags(2), (1/0) CC:0, INV:1, DBG:4}: Integer; dispid 7;
  979.     procedure CommitTrans {Flags(2), (0/0) CC:0, INV:1, DBG:4}; dispid 8;
  980.     procedure RollbackTrans {Flags(2), (0/0) CC:0, INV:1, DBG:4}; dispid 9;
  981.     procedure Open {Flags(2), (4/4) CC:0, INV:1, DBG:4}(const ConnectionString: {VT_8:0}WideString; 
  982.                                                         const UserID: {VT_8:0}WideString; 
  983.                                                         const Password: {VT_8:0}WideString; 
  984.                                                         Options: {VT_3:0}Integer); dispid 10;
  985.     property Errors {Flags(2), (1/0) CC:0, INV:2, DBG:6}: Errors readonly dispid 11;
  986.     property DefaultDatabase {Flags(2), (1/0) CC:0, INV:2, DBG:6}: WideString dispid 12;
  987.     property IsolationLevel {Flags(2), (1/0) CC:0, INV:2, DBG:6}: IsolationLevelEnum dispid 13;
  988.     property Attributes {Flags(2), (1/0) CC:0, INV:2, DBG:6}: Integer dispid 14;
  989.     property CursorLocation {Flags(2), (1/0) CC:0, INV:2, DBG:6}: CursorLocationEnum dispid 15;
  990.     property Mode {Flags(2), (1/0) CC:0, INV:2, DBG:6}: ConnectModeEnum dispid 16;
  991.     property Provider {Flags(2), (1/0) CC:0, INV:2, DBG:6}: WideString dispid 17;
  992.     property State {Flags(2), (1/0) CC:0, INV:2, DBG:6}: Integer readonly dispid 18;
  993.     function  OpenSchema {Flags(2), (4/3) CC:0, INV:1, DBG:4}(Schema: {VT_29:0}SchemaEnum; 
  994.                                                               Restrictions: {VT_12:0}OleVariant; 
  995.                                                               SchemaID: {VT_12:0}OleVariant): _Recordset; dispid 19;
  996.     property Properties {Flags(2), (1/0) CC:0, INV:2, DBG:6}: Properties readonly dispid 500;
  997.   end;
  998.  
  999. // *********************************************************************//
  1000. // Interface: _Connection
  1001. // Flags:     (4416) Dual OleAutomation Dispatchable
  1002. // GUID:      {00000550-0000-0010-8000-00AA006D2EA4}
  1003. // *********************************************************************//
  1004.   _Connection = interface(Connection15)
  1005.     ['{00000550-0000-0010-8000-00AA006D2EA4}']
  1006.     procedure Cancel {Flags(1), (0/0) CC:0, INV:1, DBG:6}; safecall;
  1007.   end;
  1008.  
  1009. // *********************************************************************//
  1010. // DispIntf:  _ConnectionDisp
  1011. // Flags:     (4416) Dual OleAutomation Dispatchable
  1012. // GUID:      {00000550-0000-0010-8000-00AA006D2EA4}
  1013. // *********************************************************************//
  1014.   _ConnectionDisp = dispinterface
  1015.     ['{00000550-0000-0010-8000-00AA006D2EA4}']
  1016.     procedure Cancel {Flags(2), (0/0) CC:0, INV:1, DBG:4}; dispid 21;
  1017.     property ConnectionString {Flags(2), (1/0) CC:0, INV:2, DBG:6}: WideString dispid 0;
  1018.     property CommandTimeout {Flags(2), (1/0) CC:0, INV:2, DBG:6}: Integer dispid 2;
  1019.     property ConnectionTimeout {Flags(2), (1/0) CC:0, INV:2, DBG:6}: Integer dispid 3;
  1020.     property Version {Flags(2), (1/0) CC:0, INV:2, DBG:6}: WideString readonly dispid 4;
  1021.     procedure Close {Flags(2), (0/0) CC:0, INV:1, DBG:4}; dispid 5;
  1022.     function  Execute {Flags(2), (4/3) CC:0, INV:1, DBG:4}(const CommandText: {VT_8:0}WideString; 
  1023.                                                            out RecordsAffected: {VT_12:1}OleVariant; 
  1024.                                                            Options: {VT_3:0}Integer): _Recordset; dispid 6;
  1025.     function  BeginTrans {Flags(2), (1/0) CC:0, INV:1, DBG:4}: Integer; dispid 7;
  1026.     procedure CommitTrans {Flags(2), (0/0) CC:0, INV:1, DBG:4}; dispid 8;
  1027.     procedure RollbackTrans {Flags(2), (0/0) CC:0, INV:1, DBG:4}; dispid 9;
  1028.     procedure Open {Flags(2), (4/4) CC:0, INV:1, DBG:4}(const ConnectionString: {VT_8:0}WideString; 
  1029.                                                         const UserID: {VT_8:0}WideString; 
  1030.                                                         const Password: {VT_8:0}WideString; 
  1031.                                                         Options: {VT_3:0}Integer); dispid 10;
  1032.     property Errors {Flags(2), (1/0) CC:0, INV:2, DBG:6}: Errors readonly dispid 11;
  1033.     property DefaultDatabase {Flags(2), (1/0) CC:0, INV:2, DBG:6}: WideString dispid 12;
  1034.     property IsolationLevel {Flags(2), (1/0) CC:0, INV:2, DBG:6}: IsolationLevelEnum dispid 13;
  1035.     property Attributes {Flags(2), (1/0) CC:0, INV:2, DBG:6}: Integer dispid 14;
  1036.     property CursorLocation {Flags(2), (1/0) CC:0, INV:2, DBG:6}: CursorLocationEnum dispid 15;
  1037.     property Mode {Flags(2), (1/0) CC:0, INV:2, DBG:6}: ConnectModeEnum dispid 16;
  1038.     property Provider {Flags(2), (1/0) CC:0, INV:2, DBG:6}: WideString dispid 17;
  1039.     property State {Flags(2), (1/0) CC:0, INV:2, DBG:6}: Integer readonly dispid 18;
  1040.     function  OpenSchema {Flags(2), (4/3) CC:0, INV:1, DBG:4}(Schema: {VT_29:0}SchemaEnum; 
  1041.                                                               Restrictions: {VT_12:0}OleVariant; 
  1042.                                                               SchemaID: {VT_12:0}OleVariant): _Recordset; dispid 19;
  1043.     property Properties {Flags(2), (1/0) CC:0, INV:2, DBG:6}: Properties readonly dispid 500;
  1044.   end;
  1045.  
  1046. // *********************************************************************//
  1047. // Interface: Recordset15
  1048. // Flags:     (4560) Hidden Dual NonExtensible OleAutomation Dispatchable
  1049. // GUID:      {0000050E-0000-0010-8000-00AA006D2EA4}
  1050. // *********************************************************************//
  1051.   Recordset15 = interface(_ADO)
  1052.     ['{0000050E-0000-0010-8000-00AA006D2EA4}']
  1053.     function  Get_AbsolutePosition {Flags(1), (1/0) CC:0, INV:2, DBG:6}: PositionEnum; safecall;
  1054.     procedure Set_AbsolutePosition {Flags(1), (1/1) CC:0, INV:4, DBG:6}(pl: {VT_29:0}PositionEnum); safecall;
  1055.     procedure Set_ActiveConnection {Flags(1), (1/1) CC:0, INV:8, DBG:6}(const pvar: {VT_9:0}IDispatch); safecall;
  1056.     procedure _Set_ActiveConnection {Flags(1), (1/1) CC:0, INV:4, DBG:6}(pvar: {VT_12:0}OleVariant); safecall;
  1057.     function  Get_ActiveConnection {Flags(1), (1/0) CC:0, INV:2, DBG:6}: OleVariant; safecall;
  1058.     function  Get_BOF {Flags(1), (1/0) CC:0, INV:2, DBG:6}: WordBool; safecall;
  1059.     function  Get_Bookmark {Flags(1), (1/0) CC:0, INV:2, DBG:6}: OleVariant; safecall;
  1060.     procedure Set_Bookmark {Flags(1), (1/1) CC:0, INV:4, DBG:6}(pvBookmark: {VT_12:0}OleVariant); safecall;
  1061.     function  Get_CacheSize {Flags(1), (1/0) CC:0, INV:2, DBG:6}: Integer; safecall;
  1062.     procedure Set_CacheSize {Flags(1), (1/1) CC:0, INV:4, DBG:6}(pl: {VT_3:0}Integer); safecall;
  1063.     function  Get_CursorType {Flags(1), (1/0) CC:0, INV:2, DBG:6}: CursorTypeEnum; safecall;
  1064.     procedure Set_CursorType {Flags(1), (1/1) CC:0, INV:4, DBG:6}(plCursorType: {VT_29:0}CursorTypeEnum); safecall;
  1065.     function  Get_EOF {Flags(1), (1/0) CC:0, INV:2, DBG:6}: WordBool; safecall;
  1066.     function  Get_Fields {Flags(1), (1/0) CC:0, INV:2, DBG:6}: Fields; safecall;
  1067.     function  Get_LockType {Flags(1), (1/0) CC:0, INV:2, DBG:6}: LockTypeEnum; safecall;
  1068.     procedure Set_LockType {Flags(1), (1/1) CC:0, INV:4, DBG:6}(plLockType: {VT_29:0}LockTypeEnum); safecall;
  1069.     function  Get_MaxRecords {Flags(1), (1/0) CC:0, INV:2, DBG:6}: Integer; safecall;
  1070.     procedure Set_MaxRecords {Flags(1), (1/1) CC:0, INV:4, DBG:6}(plMaxRecords: {VT_3:0}Integer); safecall;
  1071.     function  Get_RecordCount {Flags(1), (1/0) CC:0, INV:2, DBG:6}: Integer; safecall;
  1072.     procedure Set_Source {Flags(1), (1/1) CC:0, INV:8, DBG:6}(const pvSource: {VT_9:0}IDispatch); safecall;
  1073.     procedure _Set_Source {Flags(1), (1/1) CC:0, INV:4, DBG:6}(const pvSource: {VT_8:0}WideString); safecall;
  1074.     function  Get_Source {Flags(1), (1/0) CC:0, INV:2, DBG:6}: OleVariant; safecall;
  1075.     procedure AddNew {Flags(1), (2/2) CC:0, INV:1, DBG:6}(FieldList: {VT_12:0}OleVariant; 
  1076.                                                           Values: {VT_12:0}OleVariant); safecall;
  1077.     procedure CancelUpdate {Flags(1), (0/0) CC:0, INV:1, DBG:6}; safecall;
  1078.     procedure Close {Flags(1), (0/0) CC:0, INV:1, DBG:6}; safecall;
  1079.     procedure Delete {Flags(1), (1/1) CC:0, INV:1, DBG:6}(AffectRecords: {VT_29:0}AffectEnum); safecall;
  1080.     function  GetRows {Flags(1), (4/3) CC:0, INV:1, DBG:6}(Rows: {VT_3:0}Integer; 
  1081.                                                            Start: {VT_12:0}OleVariant; 
  1082.                                                            Fields: {VT_12:0}OleVariant): OleVariant; safecall;
  1083.     procedure Move {Flags(1), (2/2) CC:0, INV:1, DBG:6}(NumRecords: {VT_3:0}Integer; 
  1084.                                                         Start: {VT_12:0}OleVariant); safecall;
  1085.     procedure MoveNext {Flags(1), (0/0) CC:0, INV:1, DBG:6}; safecall;
  1086.     procedure MovePrevious {Flags(1), (0/0) CC:0, INV:1, DBG:6}; safecall;
  1087.     procedure MoveFirst {Flags(1), (0/0) CC:0, INV:1, DBG:6}; safecall;
  1088.     procedure MoveLast {Flags(1), (0/0) CC:0, INV:1, DBG:6}; safecall;
  1089.     procedure Open {Flags(1), (5/5) CC:0, INV:1, DBG:6}(Source: {VT_12:0}OleVariant; 
  1090.                                                         ActiveConnection: {VT_12:0}OleVariant; 
  1091.                                                         CursorType: {VT_29:0}CursorTypeEnum; 
  1092.                                                         LockType: {VT_29:0}LockTypeEnum; 
  1093.                                                         Options: {VT_3:0}Integer); safecall;
  1094.     procedure Requery {Flags(1), (1/1) CC:0, INV:1, DBG:6}(Options: {VT_3:0}Integer); safecall;
  1095.     procedure _xResync {Flags(1), (1/1) CC:0, INV:1, DBG:6}(AffectRecords: {VT_29:0}AffectEnum); safecall;
  1096.     procedure Update {Flags(1), (2/2) CC:0, INV:1, DBG:6}(Fields: {VT_12:0}OleVariant; 
  1097.                                                           Values: {VT_12:0}OleVariant); safecall;
  1098.     function  Get_AbsolutePage {Flags(1), (1/0) CC:0, INV:2, DBG:6}: PositionEnum; safecall;
  1099.     procedure Set_AbsolutePage {Flags(1), (1/1) CC:0, INV:4, DBG:6}(pl: {VT_29:0}PositionEnum); safecall;
  1100.     function  Get_EditMode {Flags(1), (1/0) CC:0, INV:2, DBG:6}: EditModeEnum; safecall;
  1101.     function  Get_Filter {Flags(1), (1/0) CC:0, INV:2, DBG:6}: OleVariant; safecall;
  1102.     procedure Set_Filter {Flags(1), (1/1) CC:0, INV:4, DBG:6}(Criteria: {VT_12:0}OleVariant); safecall;
  1103.     function  Get_PageCount {Flags(1), (1/0) CC:0, INV:2, DBG:6}: Integer; safecall;
  1104.     function  Get_PageSize {Flags(1), (1/0) CC:0, INV:2, DBG:6}: Integer; safecall;
  1105.     procedure Set_PageSize {Flags(1), (1/1) CC:0, INV:4, DBG:6}(pl: {VT_3:0}Integer); safecall;
  1106.     function  Get_Sort {Flags(1), (1/0) CC:0, INV:2, DBG:6}: WideString; safecall;
  1107.     procedure Set_Sort {Flags(1), (1/1) CC:0, INV:4, DBG:6}(const Criteria: {VT_8:0}WideString); safecall;
  1108.     function  Get_Status {Flags(1), (1/0) CC:0, INV:2, DBG:6}: Integer; safecall;
  1109.     function  Get_State {Flags(1), (1/0) CC:0, INV:2, DBG:6}: Integer; safecall;
  1110.     function  _xClone {Flags(1), (1/0) CC:0, INV:1, DBG:6}: _Recordset; safecall;
  1111.     procedure UpdateBatch {Flags(1), (1/1) CC:0, INV:1, DBG:6}(AffectRecords: {VT_29:0}AffectEnum); safecall;
  1112.     procedure CancelBatch {Flags(1), (1/1) CC:0, INV:1, DBG:6}(AffectRecords: {VT_29:0}AffectEnum); safecall;
  1113.     function  Get_CursorLocation {Flags(1), (1/0) CC:0, INV:2, DBG:6}: CursorLocationEnum; safecall;
  1114.     procedure Set_CursorLocation {Flags(1), (1/1) CC:0, INV:4, DBG:6}(plCursorLoc: {VT_29:0}CursorLocationEnum); safecall;
  1115.     function  NextRecordset {Flags(1), (2/1) CC:0, INV:1, DBG:6}(out RecordsAffected: {VT_12:1}OleVariant): _Recordset; safecall;
  1116.     function  Supports {Flags(1), (2/1) CC:0, INV:1, DBG:6}(CursorOptions: {VT_29:0}CursorOptionEnum): WordBool; safecall;
  1117.     function  Get_Collect {Flags(1), (2/1) CC:0, INV:2, DBG:6}(Index: {VT_12:0}OleVariant): OleVariant; safecall;
  1118.     procedure Set_Collect {Flags(1), (2/2) CC:0, INV:4, DBG:6}(Index: {VT_12:0}OleVariant; 
  1119.                                                                pvar: {VT_12:0}OleVariant); safecall;
  1120.     function  Get_MarshalOptions {Flags(1), (1/0) CC:0, INV:2, DBG:6}: MarshalOptionsEnum; safecall;
  1121.     procedure Set_MarshalOptions {Flags(1), (1/1) CC:0, INV:4, DBG:6}(peMarshal: {VT_29:0}MarshalOptionsEnum); safecall;
  1122.     procedure Find {Flags(1), (4/4) CC:0, INV:1, DBG:6}(const Criteria: {VT_8:0}WideString; 
  1123.                                                         SkipRecords: {VT_3:0}Integer; 
  1124.                                                         SearchDirection: {VT_29:0}SearchDirectionEnum; 
  1125.                                                         Start: {VT_12:0}OleVariant); safecall;
  1126.     property AbsolutePosition: PositionEnum read Get_AbsolutePosition write Set_AbsolutePosition;
  1127.     property BOF: WordBool read Get_BOF;
  1128.     property Bookmark: OleVariant read Get_Bookmark write Set_Bookmark;
  1129.     property CacheSize: Integer read Get_CacheSize write Set_CacheSize;
  1130.     property CursorType: CursorTypeEnum read Get_CursorType write Set_CursorType;
  1131.     property EOF: WordBool read Get_EOF;
  1132.     property Fields: Fields read Get_Fields;
  1133.     property LockType: LockTypeEnum read Get_LockType write Set_LockType;
  1134.     property MaxRecords: Integer read Get_MaxRecords write Set_MaxRecords;
  1135.     property RecordCount: Integer read Get_RecordCount;
  1136.     property AbsolutePage: PositionEnum read Get_AbsolutePage write Set_AbsolutePage;
  1137.     property EditMode: EditModeEnum read Get_EditMode;
  1138.     property Filter: OleVariant read Get_Filter write Set_Filter;
  1139.     property PageCount: Integer read Get_PageCount;
  1140.     property PageSize: Integer read Get_PageSize write Set_PageSize;
  1141.     property Sort: WideString read Get_Sort write Set_Sort;
  1142.     property Status: Integer read Get_Status;
  1143.     property State: Integer read Get_State;
  1144.     property CursorLocation: CursorLocationEnum read Get_CursorLocation write Set_CursorLocation;
  1145.     property Collect {Flags(2), (2/1) CC:0, INV:2, DBG:5}[Index: {VT_12:0}OleVariant]: OleVariant read Get_Collect write Set_Collect;
  1146.     property MarshalOptions: MarshalOptionsEnum read Get_MarshalOptions write Set_MarshalOptions;
  1147.   end;
  1148.  
  1149. // *********************************************************************//
  1150. // DispIntf:  Recordset15Disp
  1151. // Flags:     (4560) Hidden Dual NonExtensible OleAutomation Dispatchable
  1152. // GUID:      {0000050E-0000-0010-8000-00AA006D2EA4}
  1153. // *********************************************************************//
  1154.   Recordset15Disp = dispinterface
  1155.     ['{0000050E-0000-0010-8000-00AA006D2EA4}']
  1156.     property AbsolutePosition {Flags(2), (1/0) CC:0, INV:2, DBG:6}: PositionEnum dispid 1000;
  1157.     function  ActiveConnection {Flags(2), (1/0) CC:0, INV:8, DBG:4}: IDispatch; dispid 1001;
  1158.     property BOF {Flags(2), (1/0) CC:0, INV:2, DBG:6}: WordBool readonly dispid 1002;
  1159.     property Bookmark {Flags(2), (1/0) CC:0, INV:2, DBG:6}: OleVariant dispid 1003;
  1160.     property CacheSize {Flags(2), (1/0) CC:0, INV:2, DBG:6}: Integer dispid 1004;
  1161.     property CursorType {Flags(2), (1/0) CC:0, INV:2, DBG:6}: CursorTypeEnum dispid 1005;
  1162.     property EOF {Flags(2), (1/0) CC:0, INV:2, DBG:6}: WordBool readonly dispid 1006;
  1163.     property Fields {Flags(2), (1/0) CC:0, INV:2, DBG:6}: Fields readonly dispid 0;
  1164.     property LockType {Flags(2), (1/0) CC:0, INV:2, DBG:6}: LockTypeEnum dispid 1008;
  1165.     property MaxRecords {Flags(2), (1/0) CC:0, INV:2, DBG:6}: Integer dispid 1009;
  1166.     property RecordCount {Flags(2), (1/0) CC:0, INV:2, DBG:6}: Integer readonly dispid 1010;
  1167.     function  Source {Flags(2), (1/0) CC:0, INV:8, DBG:4}: IDispatch; dispid 1011;
  1168.     procedure AddNew {Flags(2), (2/2) CC:0, INV:1, DBG:4}(FieldList: {VT_12:0}OleVariant; 
  1169.                                                           Values: {VT_12:0}OleVariant); dispid 1012;
  1170.     procedure CancelUpdate {Flags(2), (0/0) CC:0, INV:1, DBG:4}; dispid 1013;
  1171.     procedure Close {Flags(2), (0/0) CC:0, INV:1, DBG:4}; dispid 1014;
  1172.     procedure Delete {Flags(2), (1/1) CC:0, INV:1, DBG:4}(AffectRecords: {VT_29:0}AffectEnum); dispid 1015;
  1173.     function  GetRows {Flags(2), (4/3) CC:0, INV:1, DBG:4}(Rows: {VT_3:0}Integer; 
  1174.                                                            Start: {VT_12:0}OleVariant; 
  1175.                                                            Fields: {VT_12:0}OleVariant): OleVariant; dispid 1016;
  1176.     procedure Move {Flags(2), (2/2) CC:0, INV:1, DBG:4}(NumRecords: {VT_3:0}Integer; 
  1177.                                                         Start: {VT_12:0}OleVariant); dispid 1017;
  1178.     procedure MoveNext {Flags(2), (0/0) CC:0, INV:1, DBG:4}; dispid 1018;
  1179.     procedure MovePrevious {Flags(2), (0/0) CC:0, INV:1, DBG:4}; dispid 1019;
  1180.     procedure MoveFirst {Flags(2), (0/0) CC:0, INV:1, DBG:4}; dispid 1020;
  1181.     procedure MoveLast {Flags(2), (0/0) CC:0, INV:1, DBG:4}; dispid 1021;
  1182.     procedure Open {Flags(2), (5/5) CC:0, INV:1, DBG:4}(Source: {VT_12:0}OleVariant; 
  1183.                                                         ActiveConnection: {VT_12:0}OleVariant; 
  1184.                                                         CursorType: {VT_29:0}CursorTypeEnum; 
  1185.                                                         LockType: {VT_29:0}LockTypeEnum; 
  1186.                                                         Options: {VT_3:0}Integer); dispid 1022;
  1187.     procedure Requery {Flags(2), (1/1) CC:0, INV:1, DBG:4}(Options: {VT_3:0}Integer); dispid 1023;
  1188.     procedure _xResync {Flags(2), (1/1) CC:0, INV:1, DBG:4}(AffectRecords: {VT_29:0}AffectEnum); dispid 1610809378;
  1189.     procedure Update {Flags(2), (2/2) CC:0, INV:1, DBG:4}(Fields: {VT_12:0}OleVariant; 
  1190.                                                           Values: {VT_12:0}OleVariant); dispid 1025;
  1191.     property AbsolutePage {Flags(2), (1/0) CC:0, INV:2, DBG:6}: PositionEnum dispid 1047;
  1192.     property EditMode {Flags(2), (1/0) CC:0, INV:2, DBG:6}: EditModeEnum readonly dispid 1026;
  1193.     property Filter {Flags(2), (1/0) CC:0, INV:2, DBG:6}: OleVariant dispid 1030;
  1194.     property PageCount {Flags(2), (1/0) CC:0, INV:2, DBG:6}: Integer readonly dispid 1050;
  1195.     property PageSize {Flags(2), (1/0) CC:0, INV:2, DBG:6}: Integer dispid 1048;
  1196.     property Sort {Flags(2), (1/0) CC:0, INV:2, DBG:6}: WideString dispid 1031;
  1197.     property Status {Flags(2), (1/0) CC:0, INV:2, DBG:6}: Integer readonly dispid 1029;
  1198.     property State {Flags(2), (1/0) CC:0, INV:2, DBG:6}: Integer readonly dispid 1054;
  1199.     function  _xClone {Flags(2), (1/0) CC:0, INV:1, DBG:4}: _Recordset; dispid 1610809392;
  1200.     procedure UpdateBatch {Flags(2), (1/1) CC:0, INV:1, DBG:4}(AffectRecords: {VT_29:0}AffectEnum); dispid 1035;
  1201.     procedure CancelBatch {Flags(2), (1/1) CC:0, INV:1, DBG:4}(AffectRecords: {VT_29:0}AffectEnum); dispid 1049;
  1202.     property CursorLocation {Flags(2), (1/0) CC:0, INV:2, DBG:6}: CursorLocationEnum dispid 1051;
  1203.     function  NextRecordset {Flags(2), (2/1) CC:0, INV:1, DBG:4}(out RecordsAffected: {VT_12:1}OleVariant): _Recordset; dispid 1052;
  1204.     function  Supports {Flags(2), (2/1) CC:0, INV:1, DBG:4}(CursorOptions: {VT_29:0}CursorOptionEnum): WordBool; dispid 1036;
  1205.     property Collect {Flags(2), (2/1) CC:0, INV:2, DBG:6}[Index: {VT_12:0}OleVariant]: OleVariant dispid -8;
  1206.     property MarshalOptions {Flags(2), (1/0) CC:0, INV:2, DBG:6}: MarshalOptionsEnum dispid 1053;
  1207.     procedure Find {Flags(2), (4/4) CC:0, INV:1, DBG:4}(const Criteria: {VT_8:0}WideString; 
  1208.                                                         SkipRecords: {VT_3:0}Integer; 
  1209.                                                         SearchDirection: {VT_29:0}SearchDirectionEnum; 
  1210.                                                         Start: {VT_12:0}OleVariant); dispid 1058;
  1211.     property Properties {Flags(2), (1/0) CC:0, INV:2, DBG:6}: Properties readonly dispid 500;
  1212.   end;
  1213.  
  1214. // *********************************************************************//
  1215. // Interface: Recordset20
  1216. // Flags:     (4560) Hidden Dual NonExtensible OleAutomation Dispatchable
  1217. // GUID:      {0000054F-0000-0010-8000-00AA006D2EA4}
  1218. // *********************************************************************//
  1219.   Recordset20 = interface(Recordset15)
  1220.     ['{0000054F-0000-0010-8000-00AA006D2EA4}']
  1221.     procedure Cancel {Flags(1), (0/0) CC:0, INV:1, DBG:6}; safecall;
  1222.     function  Get_DataSource {Flags(1), (1/0) CC:0, INV:2, DBG:6}: IUnknown; safecall;
  1223.     procedure Set_DataSource {Flags(1), (1/1) CC:0, INV:8, DBG:6}(const ppunkDataSource: {VT_13:0}IUnknown); safecall;
  1224.     procedure Save {Flags(1), (2/2) CC:0, INV:1, DBG:6}(const FileName: {VT_8:0}WideString; 
  1225.                                                         PersistFormat: {VT_29:0}PersistFormatEnum); safecall;
  1226.     function  Get_ActiveCommand {Flags(1), (1/0) CC:0, INV:2, DBG:6}: IDispatch; safecall;
  1227.     procedure Set_StayInSync {Flags(1), (1/1) CC:0, INV:4, DBG:6}(pbStayInSync: {VT_11:0}WordBool); safecall;
  1228.     function  Get_StayInSync {Flags(1), (1/0) CC:0, INV:2, DBG:6}: WordBool; safecall;
  1229.     function  GetString {Flags(1), (6/5) CC:0, INV:1, DBG:6}(StringFormat: {VT_29:0}StringFormatEnum; 
  1230.                                                              NumRows: {VT_3:0}Integer; 
  1231.                                                              const ColumnDelimeter: {VT_8:0}WideString; 
  1232.                                                              const RowDelimeter: {VT_8:0}WideString; 
  1233.                                                              const NullExpr: {VT_8:0}WideString): WideString; safecall;
  1234.     function  Get_DataMember {Flags(1), (1/0) CC:0, INV:2, DBG:6}: WideString; safecall;
  1235.     procedure Set_DataMember {Flags(1), (1/1) CC:0, INV:4, DBG:6}(const pbstrDataMember: {VT_8:0}WideString); safecall;
  1236.     function  CompareBookmarks {Flags(1), (3/2) CC:0, INV:1, DBG:6}(Bookmark1: {VT_12:0}OleVariant; 
  1237.                                                                     Bookmark2: {VT_12:0}OleVariant): CompareEnum; safecall;
  1238.     function  Clone {Flags(1), (2/1) CC:0, INV:1, DBG:6}(LockType: {VT_29:0}LockTypeEnum): _Recordset; safecall;
  1239.     procedure Resync {Flags(1), (2/2) CC:0, INV:1, DBG:6}(AffectRecords: {VT_29:0}AffectEnum; 
  1240.                                                           ResyncValues: {VT_29:0}ResyncEnum); safecall;
  1241.     property DataSource: IUnknown read Get_DataSource write Set_DataSource;
  1242.     property ActiveCommand: IDispatch read Get_ActiveCommand;
  1243.     property StayInSync: WordBool read Get_StayInSync write Set_StayInSync;
  1244.     property DataMember: WideString read Get_DataMember write Set_DataMember;
  1245.   end;
  1246.  
  1247. // *********************************************************************//
  1248. // DispIntf:  Recordset20Disp
  1249. // Flags:     (4560) Hidden Dual NonExtensible OleAutomation Dispatchable
  1250. // GUID:      {0000054F-0000-0010-8000-00AA006D2EA4}
  1251. // *********************************************************************//
  1252.   Recordset20Disp = dispinterface
  1253.     ['{0000054F-0000-0010-8000-00AA006D2EA4}']
  1254.     procedure Cancel {Flags(2), (0/0) CC:0, INV:1, DBG:4}; dispid 1055;
  1255.     property DataSource {Flags(2), (1/0) CC:0, INV:2, DBG:6}: IUnknown dispid 1056;
  1256.     procedure Save {Flags(2), (2/2) CC:0, INV:1, DBG:4}(const FileName: {VT_8:0}WideString; 
  1257.                                                         PersistFormat: {VT_29:0}PersistFormatEnum); dispid 1057;
  1258.     property ActiveCommand {Flags(2), (1/0) CC:0, INV:2, DBG:6}: IDispatch readonly dispid 1061;
  1259.     property StayInSync {Flags(2), (1/0) CC:0, INV:4, DBG:6}: WordBool dispid 1063;
  1260.     function  GetString {Flags(2), (6/5) CC:0, INV:1, DBG:4}(StringFormat: {VT_29:0}StringFormatEnum; 
  1261.                                                              NumRows: {VT_3:0}Integer; 
  1262.                                                              const ColumnDelimeter: {VT_8:0}WideString; 
  1263.                                                              const RowDelimeter: {VT_8:0}WideString; 
  1264.                                                              const NullExpr: {VT_8:0}WideString): WideString; dispid 1062;
  1265.     property DataMember {Flags(2), (1/0) CC:0, INV:2, DBG:6}: WideString dispid 1064;
  1266.     function  CompareBookmarks {Flags(2), (3/2) CC:0, INV:1, DBG:4}(Bookmark1: {VT_12:0}OleVariant; 
  1267.                                                                     Bookmark2: {VT_12:0}OleVariant): CompareEnum; dispid 1065;
  1268.     function  Clone {Flags(2), (2/1) CC:0, INV:1, DBG:4}(LockType: {VT_29:0}LockTypeEnum): _Recordset; dispid 1034;
  1269.     procedure Resync {Flags(2), (2/2) CC:0, INV:1, DBG:4}(AffectRecords: {VT_29:0}AffectEnum; 
  1270.                                                           ResyncValues: {VT_29:0}ResyncEnum); dispid 1024;
  1271.     property AbsolutePosition {Flags(2), (1/0) CC:0, INV:2, DBG:6}: PositionEnum dispid 1000;
  1272.     function  ActiveConnection {Flags(2), (1/0) CC:0, INV:8, DBG:4}: IDispatch; dispid 1001;
  1273.     property BOF {Flags(2), (1/0) CC:0, INV:2, DBG:6}: WordBool readonly dispid 1002;
  1274.     property Bookmark {Flags(2), (1/0) CC:0, INV:2, DBG:6}: OleVariant dispid 1003;
  1275.     property CacheSize {Flags(2), (1/0) CC:0, INV:2, DBG:6}: Integer dispid 1004;
  1276.     property CursorType {Flags(2), (1/0) CC:0, INV:2, DBG:6}: CursorTypeEnum dispid 1005;
  1277.     property EOF {Flags(2), (1/0) CC:0, INV:2, DBG:6}: WordBool readonly dispid 1006;
  1278.     property Fields {Flags(2), (1/0) CC:0, INV:2, DBG:6}: Fields readonly dispid 0;
  1279.     property LockType {Flags(2), (1/0) CC:0, INV:2, DBG:6}: LockTypeEnum dispid 1008;
  1280.     property MaxRecords {Flags(2), (1/0) CC:0, INV:2, DBG:6}: Integer dispid 1009;
  1281.     property RecordCount {Flags(2), (1/0) CC:0, INV:2, DBG:6}: Integer readonly dispid 1010;
  1282.     function  Source {Flags(2), (1/0) CC:0, INV:8, DBG:4}: IDispatch; dispid 1011;
  1283.     procedure AddNew {Flags(2), (2/2) CC:0, INV:1, DBG:4}(FieldList: {VT_12:0}OleVariant; 
  1284.                                                           Values: {VT_12:0}OleVariant); dispid 1012;
  1285.     procedure CancelUpdate {Flags(2), (0/0) CC:0, INV:1, DBG:4}; dispid 1013;
  1286.     procedure Close {Flags(2), (0/0) CC:0, INV:1, DBG:4}; dispid 1014;
  1287.     procedure Delete {Flags(2), (1/1) CC:0, INV:1, DBG:4}(AffectRecords: {VT_29:0}AffectEnum); dispid 1015;
  1288.     function  GetRows {Flags(2), (4/3) CC:0, INV:1, DBG:4}(Rows: {VT_3:0}Integer; 
  1289.                                                            Start: {VT_12:0}OleVariant; 
  1290.                                                            Fields: {VT_12:0}OleVariant): OleVariant; dispid 1016;
  1291.     procedure Move {Flags(2), (2/2) CC:0, INV:1, DBG:4}(NumRecords: {VT_3:0}Integer; 
  1292.                                                         Start: {VT_12:0}OleVariant); dispid 1017;
  1293.     procedure MoveNext {Flags(2), (0/0) CC:0, INV:1, DBG:4}; dispid 1018;
  1294.     procedure MovePrevious {Flags(2), (0/0) CC:0, INV:1, DBG:4}; dispid 1019;
  1295.     procedure MoveFirst {Flags(2), (0/0) CC:0, INV:1, DBG:4}; dispid 1020;
  1296.     procedure MoveLast {Flags(2), (0/0) CC:0, INV:1, DBG:4}; dispid 1021;
  1297.     procedure Open {Flags(2), (5/5) CC:0, INV:1, DBG:4}(Source: {VT_12:0}OleVariant; 
  1298.                                                         ActiveConnection: {VT_12:0}OleVariant; 
  1299.                                                         CursorType: {VT_29:0}CursorTypeEnum; 
  1300.                                                         LockType: {VT_29:0}LockTypeEnum; 
  1301.                                                         Options: {VT_3:0}Integer); dispid 1022;
  1302.     procedure Requery {Flags(2), (1/1) CC:0, INV:1, DBG:4}(Options: {VT_3:0}Integer); dispid 1023;
  1303.     procedure _xResync {Flags(2), (1/1) CC:0, INV:1, DBG:4}(AffectRecords: {VT_29:0}AffectEnum); dispid 1610809378;
  1304.     procedure Update {Flags(2), (2/2) CC:0, INV:1, DBG:4}(Fields: {VT_12:0}OleVariant; 
  1305.                                                           Values: {VT_12:0}OleVariant); dispid 1025;
  1306.     property AbsolutePage {Flags(2), (1/0) CC:0, INV:2, DBG:6}: PositionEnum dispid 1047;
  1307.     property EditMode {Flags(2), (1/0) CC:0, INV:2, DBG:6}: EditModeEnum readonly dispid 1026;
  1308.     property Filter {Flags(2), (1/0) CC:0, INV:2, DBG:6}: OleVariant dispid 1030;
  1309.     property PageCount {Flags(2), (1/0) CC:0, INV:2, DBG:6}: Integer readonly dispid 1050;
  1310.     property PageSize {Flags(2), (1/0) CC:0, INV:2, DBG:6}: Integer dispid 1048;
  1311.     property Sort {Flags(2), (1/0) CC:0, INV:2, DBG:6}: WideString dispid 1031;
  1312.     property Status {Flags(2), (1/0) CC:0, INV:2, DBG:6}: Integer readonly dispid 1029;
  1313.     property State {Flags(2), (1/0) CC:0, INV:2, DBG:6}: Integer readonly dispid 1054;
  1314.     function  _xClone {Flags(2), (1/0) CC:0, INV:1, DBG:4}: _Recordset; dispid 1610809392;
  1315.     procedure UpdateBatch {Flags(2), (1/1) CC:0, INV:1, DBG:4}(AffectRecords: {VT_29:0}AffectEnum); dispid 1035;
  1316.     procedure CancelBatch {Flags(2), (1/1) CC:0, INV:1, DBG:4}(AffectRecords: {VT_29:0}AffectEnum); dispid 1049;
  1317.     property CursorLocation {Flags(2), (1/0) CC:0, INV:2, DBG:6}: CursorLocationEnum dispid 1051;
  1318.     function  NextRecordset {Flags(2), (2/1) CC:0, INV:1, DBG:4}(out RecordsAffected: {VT_12:1}OleVariant): _Recordset; dispid 1052;
  1319.     function  Supports {Flags(2), (2/1) CC:0, INV:1, DBG:4}(CursorOptions: {VT_29:0}CursorOptionEnum): WordBool; dispid 1036;
  1320.     property Collect {Flags(2), (2/1) CC:0, INV:2, DBG:6}[Index: {VT_12:0}OleVariant]: OleVariant dispid -8;
  1321.     property MarshalOptions {Flags(2), (1/0) CC:0, INV:2, DBG:6}: MarshalOptionsEnum dispid 1053;
  1322.     procedure Find {Flags(2), (4/4) CC:0, INV:1, DBG:4}(const Criteria: {VT_8:0}WideString; 
  1323.                                                         SkipRecords: {VT_3:0}Integer; 
  1324.                                                         SearchDirection: {VT_29:0}SearchDirectionEnum; 
  1325.                                                         Start: {VT_12:0}OleVariant); dispid 1058;
  1326.     property Properties {Flags(2), (1/0) CC:0, INV:2, DBG:6}: Properties readonly dispid 500;
  1327.   end;
  1328.  
  1329. // *********************************************************************//
  1330. // Interface: _Recordset
  1331. // Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
  1332. // GUID:      {00000555-0000-0010-8000-00AA006D2EA4}
  1333. // *********************************************************************//
  1334.   _Recordset = interface(Recordset20)
  1335.     ['{00000555-0000-0010-8000-00AA006D2EA4}']
  1336.     procedure Seek {Flags(1), (2/2) CC:0, INV:1, DBG:6}(KeyValues: {VT_12:0}OleVariant; 
  1337.                                                         SeekOption: {VT_29:0}SeekEnum); safecall;
  1338.     procedure Set_Index {Flags(1), (1/1) CC:0, INV:4, DBG:6}(const pbstrIndex: {VT_8:0}WideString); safecall;
  1339.     function  Get_Index {Flags(1), (1/0) CC:0, INV:2, DBG:6}: WideString; safecall;
  1340.     property Index: WideString read Get_Index write Set_Index;
  1341.   end;
  1342.  
  1343. // *********************************************************************//
  1344. // DispIntf:  _RecordsetDisp
  1345. // Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
  1346. // GUID:      {00000555-0000-0010-8000-00AA006D2EA4}
  1347. // *********************************************************************//
  1348.   _RecordsetDisp = dispinterface
  1349.     ['{00000555-0000-0010-8000-00AA006D2EA4}']
  1350.     procedure Seek {Flags(2), (2/2) CC:0, INV:1, DBG:4}(KeyValues: {VT_12:0}OleVariant; 
  1351.                                                         SeekOption: {VT_29:0}SeekEnum); dispid 1066;
  1352.     property Index {Flags(2), (1/0) CC:0, INV:4, DBG:6}: WideString dispid 1067;
  1353.     procedure Cancel {Flags(2), (0/0) CC:0, INV:1, DBG:4}; dispid 1055;
  1354.     property DataSource {Flags(2), (1/0) CC:0, INV:2, DBG:6}: IUnknown dispid 1056;
  1355.     procedure Save {Flags(2), (2/2) CC:0, INV:1, DBG:4}(const FileName: {VT_8:0}WideString; 
  1356.                                                         PersistFormat: {VT_29:0}PersistFormatEnum); dispid 1057;
  1357.     property ActiveCommand {Flags(2), (1/0) CC:0, INV:2, DBG:6}: IDispatch readonly dispid 1061;
  1358.     property StayInSync {Flags(2), (1/0) CC:0, INV:4, DBG:6}: WordBool dispid 1063;
  1359.     function  GetString {Flags(2), (6/5) CC:0, INV:1, DBG:4}(StringFormat: {VT_29:0}StringFormatEnum; 
  1360.                                                              NumRows: {VT_3:0}Integer; 
  1361.                                                              const ColumnDelimeter: {VT_8:0}WideString; 
  1362.                                                              const RowDelimeter: {VT_8:0}WideString; 
  1363.                                                              const NullExpr: {VT_8:0}WideString): WideString; dispid 1062;
  1364.     property DataMember {Flags(2), (1/0) CC:0, INV:2, DBG:6}: WideString dispid 1064;
  1365.     function  CompareBookmarks {Flags(2), (3/2) CC:0, INV:1, DBG:4}(Bookmark1: {VT_12:0}OleVariant; 
  1366.                                                                     Bookmark2: {VT_12:0}OleVariant): CompareEnum; dispid 1065;
  1367.     function  Clone {Flags(2), (2/1) CC:0, INV:1, DBG:4}(LockType: {VT_29:0}LockTypeEnum): _Recordset; dispid 1034;
  1368.     procedure Resync {Flags(2), (2/2) CC:0, INV:1, DBG:4}(AffectRecords: {VT_29:0}AffectEnum; 
  1369.                                                           ResyncValues: {VT_29:0}ResyncEnum); dispid 1024;
  1370.     property AbsolutePosition {Flags(2), (1/0) CC:0, INV:2, DBG:6}: PositionEnum dispid 1000;
  1371.     function  ActiveConnection {Flags(2), (1/0) CC:0, INV:8, DBG:4}: IDispatch; dispid 1001;
  1372.     property BOF {Flags(2), (1/0) CC:0, INV:2, DBG:6}: WordBool readonly dispid 1002;
  1373.     property Bookmark {Flags(2), (1/0) CC:0, INV:2, DBG:6}: OleVariant dispid 1003;
  1374.     property CacheSize {Flags(2), (1/0) CC:0, INV:2, DBG:6}: Integer dispid 1004;
  1375.     property CursorType {Flags(2), (1/0) CC:0, INV:2, DBG:6}: CursorTypeEnum dispid 1005;
  1376.     property EOF {Flags(2), (1/0) CC:0, INV:2, DBG:6}: WordBool readonly dispid 1006;
  1377.     property Fields {Flags(2), (1/0) CC:0, INV:2, DBG:6}: Fields readonly dispid 0;
  1378.     property LockType {Flags(2), (1/0) CC:0, INV:2, DBG:6}: LockTypeEnum dispid 1008;
  1379.     property MaxRecords {Flags(2), (1/0) CC:0, INV:2, DBG:6}: Integer dispid 1009;
  1380.     property RecordCount {Flags(2), (1/0) CC:0, INV:2, DBG:6}: Integer readonly dispid 1010;
  1381.     function  Source {Flags(2), (1/0) CC:0, INV:8, DBG:4}: IDispatch; dispid 1011;
  1382.     procedure AddNew {Flags(2), (2/2) CC:0, INV:1, DBG:4}(FieldList: {VT_12:0}OleVariant; 
  1383.                                                           Values: {VT_12:0}OleVariant); dispid 1012;
  1384.     procedure CancelUpdate {Flags(2), (0/0) CC:0, INV:1, DBG:4}; dispid 1013;
  1385.     procedure Close {Flags(2), (0/0) CC:0, INV:1, DBG:4}; dispid 1014;
  1386.     procedure Delete {Flags(2), (1/1) CC:0, INV:1, DBG:4}(AffectRecords: {VT_29:0}AffectEnum); dispid 1015;
  1387.     function  GetRows {Flags(2), (4/3) CC:0, INV:1, DBG:4}(Rows: {VT_3:0}Integer; 
  1388.                                                            Start: {VT_12:0}OleVariant; 
  1389.                                                            Fields: {VT_12:0}OleVariant): OleVariant; dispid 1016;
  1390.     procedure Move {Flags(2), (2/2) CC:0, INV:1, DBG:4}(NumRecords: {VT_3:0}Integer; 
  1391.                                                         Start: {VT_12:0}OleVariant); dispid 1017;
  1392.     procedure MoveNext {Flags(2), (0/0) CC:0, INV:1, DBG:4}; dispid 1018;
  1393.     procedure MovePrevious {Flags(2), (0/0) CC:0, INV:1, DBG:4}; dispid 1019;
  1394.     procedure MoveFirst {Flags(2), (0/0) CC:0, INV:1, DBG:4}; dispid 1020;
  1395.     procedure MoveLast {Flags(2), (0/0) CC:0, INV:1, DBG:4}; dispid 1021;
  1396.     procedure Open {Flags(2), (5/5) CC:0, INV:1, DBG:4}(Source: {VT_12:0}OleVariant; 
  1397.                                                         ActiveConnection: {VT_12:0}OleVariant; 
  1398.                                                         CursorType: {VT_29:0}CursorTypeEnum; 
  1399.                                                         LockType: {VT_29:0}LockTypeEnum; 
  1400.                                                         Options: {VT_3:0}Integer); dispid 1022;
  1401.     procedure Requery {Flags(2), (1/1) CC:0, INV:1, DBG:4}(Options: {VT_3:0}Integer); dispid 1023;
  1402.     procedure _xResync {Flags(2), (1/1) CC:0, INV:1, DBG:4}(AffectRecords: {VT_29:0}AffectEnum); dispid 1610809378;
  1403.     procedure Update {Flags(2), (2/2) CC:0, INV:1, DBG:4}(Fields: {VT_12:0}OleVariant; 
  1404.                                                           Values: {VT_12:0}OleVariant); dispid 1025;
  1405.     property AbsolutePage {Flags(2), (1/0) CC:0, INV:2, DBG:6}: PositionEnum dispid 1047;
  1406.     property EditMode {Flags(2), (1/0) CC:0, INV:2, DBG:6}: EditModeEnum readonly dispid 1026;
  1407.     property Filter {Flags(2), (1/0) CC:0, INV:2, DBG:6}: OleVariant dispid 1030;
  1408.     property PageCount {Flags(2), (1/0) CC:0, INV:2, DBG:6}: Integer readonly dispid 1050;
  1409.     property PageSize {Flags(2), (1/0) CC:0, INV:2, DBG:6}: Integer dispid 1048;
  1410.     property Sort {Flags(2), (1/0) CC:0, INV:2, DBG:6}: WideString dispid 1031;
  1411.     property Status {Flags(2), (1/0) CC:0, INV:2, DBG:6}: Integer readonly dispid 1029;
  1412.     property State {Flags(2), (1/0) CC:0, INV:2, DBG:6}: Integer readonly dispid 1054;
  1413.     function  _xClone {Flags(2), (1/0) CC:0, INV:1, DBG:4}: _Recordset; dispid 1610809392;
  1414.     procedure UpdateBatch {Flags(2), (1/1) CC:0, INV:1, DBG:4}(AffectRecords: {VT_29:0}AffectEnum); dispid 1035;
  1415.     procedure CancelBatch {Flags(2), (1/1) CC:0, INV:1, DBG:4}(AffectRecords: {VT_29:0}AffectEnum); dispid 1049;
  1416.     property CursorLocation {Flags(2), (1/0) CC:0, INV:2, DBG:6}: CursorLocationEnum dispid 1051;
  1417.     function  NextRecordset {Flags(2), (2/1) CC:0, INV:1, DBG:4}(out RecordsAffected: {VT_12:1}OleVariant): _Recordset; dispid 1052;
  1418.     function  Supports {Flags(2), (2/1) CC:0, INV:1, DBG:4}(CursorOptions: {VT_29:0}CursorOptionEnum): WordBool; dispid 1036;
  1419.     property Collect {Flags(2), (2/1) CC:0, INV:2, DBG:6}[Index: {VT_12:0}OleVariant]: OleVariant dispid -8;
  1420.     property MarshalOptions {Flags(2), (1/0) CC:0, INV:2, DBG:6}: MarshalOptionsEnum dispid 1053;
  1421.     procedure Find {Flags(2), (4/4) CC:0, INV:1, DBG:4}(const Criteria: {VT_8:0}WideString; 
  1422.                                                         SkipRecords: {VT_3:0}Integer; 
  1423.                                                         SearchDirection: {VT_29:0}SearchDirectionEnum; 
  1424.                                                         Start: {VT_12:0}OleVariant); dispid 1058;
  1425.     property Properties {Flags(2), (1/0) CC:0, INV:2, DBG:6}: Properties readonly dispid 500;
  1426.   end;
  1427.  
  1428. // *********************************************************************//
  1429. // Interface: Fields15
  1430. // Flags:     (4560) Hidden Dual NonExtensible OleAutomation Dispatchable
  1431. // GUID:      {00000506-0000-0010-8000-00AA006D2EA4}
  1432. // *********************************************************************//
  1433.   Fields15 = interface(_Collection)
  1434.     ['{00000506-0000-0010-8000-00AA006D2EA4}']
  1435.     function  Get_Item {Flags(1), (2/1) CC:0, INV:2, DBG:6}(Index: {VT_12:0}OleVariant): Field; safecall;
  1436.     property Item {Flags(2), (2/1) CC:0, INV:2, DBG:5}[Index: {VT_12:0}OleVariant]: Field read Get_Item; default;
  1437.   end;
  1438.  
  1439. // *********************************************************************//
  1440. // DispIntf:  Fields15Disp
  1441. // Flags:     (4560) Hidden Dual NonExtensible OleAutomation Dispatchable
  1442. // GUID:      {00000506-0000-0010-8000-00AA006D2EA4}
  1443. // *********************************************************************//
  1444.   Fields15Disp = dispinterface
  1445.     ['{00000506-0000-0010-8000-00AA006D2EA4}']
  1446.     property Item {Flags(2), (2/1) CC:0, INV:2, DBG:6}[Index: {VT_12:0}OleVariant]: Field readonly dispid 0; default;
  1447.     property Count {Flags(2), (1/0) CC:0, INV:2, DBG:6}: Integer readonly dispid 1610743808;
  1448.     function  _NewEnum {Flags(2), (1/0) CC:0, INV:1, DBG:4}: IUnknown; dispid -4;
  1449.     procedure Refresh {Flags(2), (0/0) CC:0, INV:1, DBG:4}; dispid 1610743810;
  1450.   end;
  1451.  
  1452. // *********************************************************************//
  1453. // Interface: Fields
  1454. // Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
  1455. // GUID:      {0000054D-0000-0010-8000-00AA006D2EA4}
  1456. // *********************************************************************//
  1457.   Fields = interface(Fields15)
  1458.     ['{0000054D-0000-0010-8000-00AA006D2EA4}']
  1459.     procedure Append {Flags(1), (4/4) CC:0, INV:1, DBG:6}(const Name: {VT_8:0}WideString; 
  1460.                                                           Type_: {VT_29:0}DataTypeEnum; 
  1461.                                                           DefinedSize: {VT_3:0}Integer; 
  1462.                                                           Attrib: {VT_29:0}FieldAttributeEnum); safecall;
  1463.     procedure Delete {Flags(1), (1/1) CC:0, INV:1, DBG:6}(Index: {VT_12:0}OleVariant); safecall;
  1464.   end;
  1465.  
  1466. // *********************************************************************//
  1467. // DispIntf:  FieldsDisp
  1468. // Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
  1469. // GUID:      {0000054D-0000-0010-8000-00AA006D2EA4}
  1470. // *********************************************************************//
  1471.   FieldsDisp = dispinterface
  1472.     ['{0000054D-0000-0010-8000-00AA006D2EA4}']
  1473.     procedure Append {Flags(2), (4/4) CC:0, INV:1, DBG:4}(const Name: {VT_8:0}WideString; 
  1474.                                                           Type_: {VT_29:0}DataTypeEnum; 
  1475.                                                           DefinedSize: {VT_3:0}Integer; 
  1476.                                                           Attrib: {VT_29:0}FieldAttributeEnum); dispid 1610874880;
  1477.     procedure Delete {Flags(2), (1/1) CC:0, INV:1, DBG:4}(Index: {VT_12:0}OleVariant); dispid 1610874881;
  1478.     property Item {Flags(2), (2/1) CC:0, INV:2, DBG:6}[Index: {VT_12:0}OleVariant]: Field readonly dispid 0; default;
  1479.     property Count {Flags(2), (1/0) CC:0, INV:2, DBG:6}: Integer readonly dispid 1610743808;
  1480.     function  _NewEnum {Flags(2), (1/0) CC:0, INV:1, DBG:4}: IUnknown; dispid -4;
  1481.     procedure Refresh {Flags(2), (0/0) CC:0, INV:1, DBG:4}; dispid 1610743810;
  1482.   end;
  1483.  
  1484. // *********************************************************************//
  1485. // Interface: Field
  1486. // Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
  1487. // GUID:      {0000054C-0000-0010-8000-00AA006D2EA4}
  1488. // *********************************************************************//
  1489.   Field = interface(_ADO)
  1490.     ['{0000054C-0000-0010-8000-00AA006D2EA4}']
  1491.     function  Get_ActualSize {Flags(1), (1/0) CC:0, INV:2, DBG:6}: Integer; safecall;
  1492.     function  Get_Attributes {Flags(1), (1/0) CC:0, INV:2, DBG:6}: Integer; safecall;
  1493.     function  Get_DefinedSize {Flags(1), (1/0) CC:0, INV:2, DBG:6}: Integer; safecall;
  1494.     function  Get_Name {Flags(1), (1/0) CC:0, INV:2, DBG:6}: WideString; safecall;
  1495.     function  Get_Type_ {Flags(1), (1/0) CC:0, INV:2, DBG:6}: DataTypeEnum; safecall;
  1496.     function  Get_Value {Flags(1), (1/0) CC:0, INV:2, DBG:6}: OleVariant; safecall;
  1497.     procedure Set_Value {Flags(1), (1/1) CC:0, INV:4, DBG:6}(pvar: {VT_12:0}OleVariant); safecall;
  1498.     function  Get_Precision {Flags(1), (1/0) CC:0, INV:2, DBG:6}: Byte; safecall;
  1499.     function  Get_NumericScale {Flags(1), (1/0) CC:0, INV:2, DBG:6}: Byte; safecall;
  1500.     procedure AppendChunk {Flags(1), (1/1) CC:0, INV:1, DBG:6}(Data: {VT_12:0}OleVariant); safecall;
  1501.     function  GetChunk {Flags(1), (2/1) CC:0, INV:1, DBG:6}(Length: {VT_3:0}Integer): OleVariant; safecall;
  1502.     function  Get_OriginalValue {Flags(1), (1/0) CC:0, INV:2, DBG:6}: OleVariant; safecall;
  1503.     function  Get_UnderlyingValue {Flags(1), (1/0) CC:0, INV:2, DBG:6}: OleVariant; safecall;
  1504.     function  Get_DataFormat {Flags(1), (1/0) CC:0, INV:2, DBG:6}: IUnknown; safecall;
  1505.     procedure Set_DataFormat {Flags(1), (1/1) CC:0, INV:8, DBG:6}(const ppiDF: {VT_13:0}IUnknown); safecall;
  1506.     procedure Set_Precision {Flags(1), (1/1) CC:0, INV:4, DBG:6}(pbPrecision: {VT_17:0}Byte); safecall;
  1507.     procedure Set_NumericScale {Flags(1), (1/1) CC:0, INV:4, DBG:6}(pbNumericScale: {VT_17:0}Byte); safecall;
  1508.     procedure Set_Type_ {Flags(1), (1/1) CC:0, INV:4, DBG:6}(pDataType: {VT_29:0}DataTypeEnum); safecall;
  1509.     procedure Set_DefinedSize {Flags(1), (1/1) CC:0, INV:4, DBG:6}(pl: {VT_3:0}Integer); safecall;
  1510.     procedure Set_Attributes {Flags(1), (1/1) CC:0, INV:4, DBG:6}(pl: {VT_3:0}Integer); safecall;
  1511.     property ActualSize: Integer read Get_ActualSize;
  1512.     property Attributes: Integer read Get_Attributes write Set_Attributes;
  1513.     property DefinedSize: Integer read Get_DefinedSize write Set_DefinedSize;
  1514.     property Name: WideString read Get_Name;
  1515.     property Type_: DataTypeEnum read Get_Type_ write Set_Type_;
  1516.     property Value: OleVariant read Get_Value write Set_Value;
  1517.     property Precision: Byte read Get_Precision write Set_Precision;
  1518.     property NumericScale: Byte read Get_NumericScale write Set_NumericScale;
  1519.     property OriginalValue: OleVariant read Get_OriginalValue;
  1520.     property UnderlyingValue: OleVariant read Get_UnderlyingValue;
  1521.     property DataFormat: IUnknown read Get_DataFormat write Set_DataFormat;
  1522.   end;
  1523.  
  1524. // *********************************************************************//
  1525. // DispIntf:  FieldDisp
  1526. // Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
  1527. // GUID:      {0000054C-0000-0010-8000-00AA006D2EA4}
  1528. // *********************************************************************//
  1529.   FieldDisp = dispinterface
  1530.     ['{0000054C-0000-0010-8000-00AA006D2EA4}']
  1531.     property ActualSize {Flags(2), (1/0) CC:0, INV:2, DBG:6}: Integer readonly dispid 1109;
  1532.     property Attributes {Flags(2), (1/0) CC:0, INV:2, DBG:6}: Integer dispid 1036;
  1533.     property DefinedSize {Flags(2), (1/0) CC:0, INV:2, DBG:6}: Integer dispid 1103;
  1534.     property Name {Flags(2), (1/0) CC:0, INV:2, DBG:6}: WideString readonly dispid 1100;
  1535.     property Type_ {Flags(2), (1/0) CC:0, INV:2, DBG:6}: DataTypeEnum dispid 1102;
  1536.     property Value {Flags(2), (1/0) CC:0, INV:2, DBG:6}: OleVariant dispid 0;
  1537.     property Precision {Flags(2), (1/0) CC:0, INV:2, DBG:6}: Byte dispid 1610809351;
  1538.     property NumericScale {Flags(2), (1/0) CC:0, INV:2, DBG:6}: Byte dispid 1610809352;
  1539.     procedure AppendChunk {Flags(2), (1/1) CC:0, INV:1, DBG:4}(Data: {VT_12:0}OleVariant); dispid 1107;
  1540.     function  GetChunk {Flags(2), (2/1) CC:0, INV:1, DBG:4}(Length: {VT_3:0}Integer): OleVariant; dispid 1108;
  1541.     property OriginalValue {Flags(2), (1/0) CC:0, INV:2, DBG:6}: OleVariant readonly dispid 1104;
  1542.     property UnderlyingValue {Flags(2), (1/0) CC:0, INV:2, DBG:6}: OleVariant readonly dispid 1105;
  1543.     property DataFormat {Flags(2), (1/0) CC:0, INV:2, DBG:6}: IUnknown dispid 1610809357;
  1544.     property Properties {Flags(2), (1/0) CC:0, INV:2, DBG:6}: Properties readonly dispid 500;
  1545.   end;
  1546.  
  1547. // *********************************************************************//
  1548. // Interface: _Parameter
  1549. // Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
  1550. // GUID:      {0000050C-0000-0010-8000-00AA006D2EA4}
  1551. // *********************************************************************//
  1552.   _Parameter = interface(_ADO)
  1553.     ['{0000050C-0000-0010-8000-00AA006D2EA4}']
  1554.     function  Get_Name {Flags(1), (1/0) CC:0, INV:2, DBG:6}: WideString; safecall;
  1555.     procedure Set_Name {Flags(1), (1/1) CC:0, INV:4, DBG:6}(const pbstr: {VT_8:0}WideString); safecall;
  1556.     function  Get_Value {Flags(1), (1/0) CC:0, INV:2, DBG:6}: OleVariant; safecall;
  1557.     procedure Set_Value {Flags(1), (1/1) CC:0, INV:4, DBG:6}(pvar: {VT_12:0}OleVariant); safecall;
  1558.     function  Get_Type_ {Flags(1), (1/0) CC:0, INV:2, DBG:6}: DataTypeEnum; safecall;
  1559.     procedure Set_Type_ {Flags(1), (1/1) CC:0, INV:4, DBG:6}(psDataType: {VT_29:0}DataTypeEnum); safecall;
  1560.     procedure Set_Direction {Flags(1), (1/1) CC:0, INV:4, DBG:6}(plParmDirection: {VT_29:0}ParameterDirectionEnum); safecall;
  1561.     function  Get_Direction {Flags(1), (1/0) CC:0, INV:2, DBG:6}: ParameterDirectionEnum; safecall;
  1562.     procedure Set_Precision {Flags(1), (1/1) CC:0, INV:4, DBG:6}(pbPrecision: {VT_17:0}Byte); safecall;
  1563.     function  Get_Precision {Flags(1), (1/0) CC:0, INV:2, DBG:6}: Byte; safecall;
  1564.     procedure Set_NumericScale {Flags(1), (1/1) CC:0, INV:4, DBG:6}(pbScale: {VT_17:0}Byte); safecall;
  1565.     function  Get_NumericScale {Flags(1), (1/0) CC:0, INV:2, DBG:6}: Byte; safecall;
  1566.     procedure Set_Size {Flags(1), (1/1) CC:0, INV:4, DBG:6}(pl: {VT_3:0}Integer); safecall;
  1567.     function  Get_Size {Flags(1), (1/0) CC:0, INV:2, DBG:6}: Integer; safecall;
  1568.     procedure AppendChunk {Flags(1), (1/1) CC:0, INV:1, DBG:6}(Val: {VT_12:0}OleVariant); safecall;
  1569.     function  Get_Attributes {Flags(1), (1/0) CC:0, INV:2, DBG:6}: Integer; safecall;
  1570.     procedure Set_Attributes {Flags(1), (1/1) CC:0, INV:4, DBG:6}(plParmAttribs: {VT_3:0}Integer); safecall;
  1571.     property Name: WideString read Get_Name write Set_Name;
  1572.     property Value: OleVariant read Get_Value write Set_Value;
  1573.     property Type_: DataTypeEnum read Get_Type_ write Set_Type_;
  1574.     property Direction: ParameterDirectionEnum read Get_Direction write Set_Direction;
  1575.     property Precision: Byte read Get_Precision write Set_Precision;
  1576.     property NumericScale: Byte read Get_NumericScale write Set_NumericScale;
  1577.     property Size: Integer read Get_Size write Set_Size;
  1578.     property Attributes: Integer read Get_Attributes write Set_Attributes;
  1579.   end;
  1580.  
  1581. // *********************************************************************//
  1582. // DispIntf:  _ParameterDisp
  1583. // Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
  1584. // GUID:      {0000050C-0000-0010-8000-00AA006D2EA4}
  1585. // *********************************************************************//
  1586.   _ParameterDisp = dispinterface
  1587.     ['{0000050C-0000-0010-8000-00AA006D2EA4}']
  1588.     property Name {Flags(2), (1/0) CC:0, INV:2, DBG:6}: WideString dispid 1610809344;
  1589.     property Value {Flags(2), (1/0) CC:0, INV:2, DBG:6}: OleVariant dispid 0;
  1590.     property Type_ {Flags(2), (1/0) CC:0, INV:2, DBG:6}: DataTypeEnum dispid 1610809348;
  1591.     property Direction {Flags(2), (1/0) CC:0, INV:4, DBG:6}: ParameterDirectionEnum dispid 1610809350;
  1592.     property Precision {Flags(2), (1/0) CC:0, INV:4, DBG:6}: Byte dispid 1610809352;
  1593.     property NumericScale {Flags(2), (1/0) CC:0, INV:4, DBG:6}: Byte dispid 1610809354;
  1594.     property Size {Flags(2), (1/0) CC:0, INV:4, DBG:6}: Integer dispid 1610809356;
  1595.     procedure AppendChunk {Flags(2), (1/1) CC:0, INV:1, DBG:4}(Val: {VT_12:0}OleVariant); dispid 1610809358;
  1596.     property Attributes {Flags(2), (1/0) CC:0, INV:2, DBG:6}: Integer dispid 1610809359;
  1597.     property Properties {Flags(2), (1/0) CC:0, INV:2, DBG:6}: Properties readonly dispid 500;
  1598.   end;
  1599.  
  1600. // *********************************************************************//
  1601. // Interface: Parameters
  1602. // Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
  1603. // GUID:      {0000050D-0000-0010-8000-00AA006D2EA4}
  1604. // *********************************************************************//
  1605.   Parameters = interface(_DynaCollection)
  1606.     ['{0000050D-0000-0010-8000-00AA006D2EA4}']
  1607.     function  Get_Item {Flags(1), (2/1) CC:0, INV:2, DBG:6}(Index: {VT_12:0}OleVariant): _Parameter; safecall;
  1608.     property Item {Flags(2), (2/1) CC:0, INV:2, DBG:5}[Index: {VT_12:0}OleVariant]: _Parameter read Get_Item; default;
  1609.   end;
  1610.  
  1611. // *********************************************************************//
  1612. // DispIntf:  ParametersDisp
  1613. // Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
  1614. // GUID:      {0000050D-0000-0010-8000-00AA006D2EA4}
  1615. // *********************************************************************//
  1616.   ParametersDisp = dispinterface
  1617.     ['{0000050D-0000-0010-8000-00AA006D2EA4}']
  1618.     property Item {Flags(2), (2/1) CC:0, INV:2, DBG:6}[Index: {VT_12:0}OleVariant]: _Parameter readonly dispid 0; default;
  1619.     procedure Append {Flags(2), (1/1) CC:0, INV:1, DBG:4}(const Object_: {VT_9:0}IDispatch); dispid 1610809344;
  1620.     procedure Delete {Flags(2), (1/1) CC:0, INV:1, DBG:4}(Index: {VT_12:0}OleVariant); dispid 1610809345;
  1621.     property Count {Flags(2), (1/0) CC:0, INV:2, DBG:6}: Integer readonly dispid 1610743808;
  1622.     function  _NewEnum {Flags(2), (1/0) CC:0, INV:1, DBG:4}: IUnknown; dispid -4;
  1623.     procedure Refresh {Flags(2), (0/0) CC:0, INV:1, DBG:4}; dispid 1610743810;
  1624.   end;
  1625.  
  1626. // *********************************************************************//
  1627. // Interface: _Command
  1628. // Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
  1629. // GUID:      {0000054E-0000-0010-8000-00AA006D2EA4}
  1630. // *********************************************************************//
  1631.   _Command = interface(Command15)
  1632.     ['{0000054E-0000-0010-8000-00AA006D2EA4}']
  1633.     function  Get_State {Flags(1), (1/0) CC:0, INV:2, DBG:6}: Integer; safecall;
  1634.     procedure Cancel {Flags(1), (0/0) CC:0, INV:1, DBG:6}; safecall;
  1635.     property State: Integer read Get_State;
  1636.   end;
  1637.  
  1638. // *********************************************************************//
  1639. // DispIntf:  _CommandDisp
  1640. // Flags:     (4544) Dual NonExtensible OleAutomation Dispatchable
  1641. // GUID:      {0000054E-0000-0010-8000-00AA006D2EA4}
  1642. // *********************************************************************//
  1643.   _CommandDisp = dispinterface
  1644.     ['{0000054E-0000-0010-8000-00AA006D2EA4}']
  1645.     property State {Flags(2), (1/0) CC:0, INV:2, DBG:6}: Integer readonly dispid 1610874880;
  1646.     procedure Cancel {Flags(2), (0/0) CC:0, INV:1, DBG:4}; dispid 1610874881;
  1647.     function  ActiveConnection {Flags(2), (1/0) CC:0, INV:2, DBG:4}: _Connection; dispid 1610809344;
  1648.     property CommandText {Flags(2), (1/0) CC:0, INV:2, DBG:6}: WideString dispid 1610809347;
  1649.     property CommandTimeout {Flags(2), (1/0) CC:0, INV:2, DBG:6}: Integer dispid 1610809349;
  1650.     property Prepared {Flags(2), (1/0) CC:0, INV:2, DBG:6}: WordBool dispid 1610809351;
  1651.     function  Execute {Flags(2), (4/3) CC:0, INV:1, DBG:4}(out RecordsAffected: {VT_12:1}OleVariant; 
  1652.                                                            var Parameters: {VT_12:1}OleVariant; 
  1653.                                                            Options: {VT_3:0}Integer): _Recordset; dispid 1610809353;
  1654.     function  CreateParameter {Flags(2), (6/5) CC:0, INV:1, DBG:4}(const Name: {VT_8:0}WideString; 
  1655.                                                                    Type_: {VT_29:0}DataTypeEnum; 
  1656.                                                                    Direction: {VT_29:0}ParameterDirectionEnum; 
  1657.                                                                    Size: {VT_3:0}Integer; 
  1658.                                                                    Value: {VT_12:0}OleVariant): _Parameter; dispid 1610809354;
  1659.     property Parameters {Flags(2), (1/0) CC:0, INV:2, DBG:6}: Parameters readonly dispid 0;
  1660.     property CommandType {Flags(2), (1/0) CC:0, INV:4, DBG:6}: CommandTypeEnum dispid 1610809356;
  1661.     property Name {Flags(2), (1/0) CC:0, INV:2, DBG:6}: WideString dispid 1610809358;
  1662.     property Properties {Flags(2), (1/0) CC:0, INV:2, DBG:6}: Properties readonly dispid 500;
  1663.   end;
  1664.  
  1665. // *********************************************************************//
  1666. // Interface: ConnectionEventsVt
  1667. // Flags:     (16) Hidden
  1668. // GUID:      {00000402-0000-0010-8000-00AA006D2EA4}
  1669. // *********************************************************************//
  1670.   ConnectionEventsVt = interface(IUnknown)
  1671.     ['{00000402-0000-0010-8000-00AA006D2EA4}']
  1672.     function  InfoMessage {Flags(1), (3/3) CC:4, INV:1, DBG:6}(const pError: {VT_29:1}Error; 
  1673.                                                                var adStatus: {VT_29:1}EventStatusEnum; 
  1674.                                                                const pConnection: {VT_29:1}_Connection): HResult; stdcall;
  1675.     function  BeginTransComplete {Flags(1), (4/4) CC:4, INV:1, DBG:6}(TransactionLevel: {VT_3:0}Integer; 
  1676.                                                                       const pError: {VT_29:1}Error; 
  1677.                                                                       var adStatus: {VT_29:1}EventStatusEnum; 
  1678.                                                                       const pConnection: {VT_29:1}_Connection): HResult; stdcall;
  1679.     function  CommitTransComplete {Flags(1), (3/3) CC:4, INV:1, DBG:6}(const pError: {VT_29:1}Error; 
  1680.                                                                        var adStatus: {VT_29:1}EventStatusEnum; 
  1681.                                                                        const pConnection: {VT_29:1}_Connection): HResult; stdcall;
  1682.     function  RollbackTransComplete {Flags(1), (3/3) CC:4, INV:1, DBG:6}(const pError: {VT_29:1}Error; 
  1683.                                                                          var adStatus: {VT_29:1}EventStatusEnum; 
  1684.                                                                          const pConnection: {VT_29:1}_Connection): HResult; stdcall;
  1685.     function  WillExecute {Flags(1), (8/8) CC:4, INV:1, DBG:6}(var Source: {VT_8:1}WideString; 
  1686.                                                                var CursorType: {VT_29:1}CursorTypeEnum; 
  1687.                                                                var LockType: {VT_29:1}LockTypeEnum; 
  1688.                                                                var Options: {VT_3:1}Integer; 
  1689.                                                                var adStatus: {VT_29:1}EventStatusEnum; 
  1690.                                                                const pCommand: {VT_29:1}_Command; 
  1691.                                                                const pRecordset: {VT_29:1}_Recordset; 
  1692.                                                                const pConnection: {VT_29:1}_Connection): HResult; stdcall;
  1693.     function  ExecuteComplete {Flags(1), (6/6) CC:4, INV:1, DBG:6}(RecordsAffected: {VT_3:0}Integer; 
  1694.                                                                    const pError: {VT_29:1}Error; 
  1695.                                                                    var adStatus: {VT_29:1}EventStatusEnum; 
  1696.                                                                    const pCommand: {VT_29:1}_Command; 
  1697.                                                                    const pRecordset: {VT_29:1}_Recordset; 
  1698.                                                                    const pConnection: {VT_29:1}_Connection): HResult; stdcall;
  1699.     function  WillConnect {Flags(1), (6/6) CC:4, INV:1, DBG:6}(var ConnectionString: {VT_8:1}WideString; 
  1700.                                                                var UserID: {VT_8:1}WideString; 
  1701.                                                                var Password: {VT_8:1}WideString; 
  1702.                                                                var Options: {VT_3:1}Integer; 
  1703.                                                                var adStatus: {VT_29:1}EventStatusEnum; 
  1704.                                                                const pConnection: {VT_29:1}_Connection): HResult; stdcall;
  1705.     function  ConnectComplete {Flags(1), (3/3) CC:4, INV:1, DBG:6}(const pError: {VT_29:1}Error; 
  1706.                                                                    var adStatus: {VT_29:1}EventStatusEnum; 
  1707.                                                                    const pConnection: {VT_29:1}_Connection): HResult; stdcall;
  1708.     function  Disconnect1 {Flags(1), (2/2) CC:4, INV:1, DBG:6}(var adStatus: {VT_29:1}EventStatusEnum; 
  1709.                                                                const pConnection: {VT_29:1}_Connection): HResult; stdcall;
  1710.   end;
  1711.  
  1712. // *********************************************************************//
  1713. // Interface: RecordsetEventsVt
  1714. // Flags:     (16) Hidden
  1715. // GUID:      {00000403-0000-0010-8000-00AA006D2EA4}
  1716. // *********************************************************************//
  1717.   RecordsetEventsVt = interface(IUnknown)
  1718.     ['{00000403-0000-0010-8000-00AA006D2EA4}']
  1719.     function  WillChangeField {Flags(1), (4/4) CC:4, INV:1, DBG:6}(cFields: {VT_3:0}Integer; 
  1720.                                                                    Fields: {VT_12:0}OleVariant; 
  1721.                                                                    var adStatus: {VT_29:1}EventStatusEnum; 
  1722.                                                                    const pRecordset: {VT_29:1}_Recordset): HResult; stdcall;
  1723.     function  FieldChangeComplete {Flags(1), (5/5) CC:4, INV:1, DBG:6}(cFields: {VT_3:0}Integer; 
  1724.                                                                        Fields: {VT_12:0}OleVariant; 
  1725.                                                                        const pError: {VT_29:1}Error; 
  1726.                                                                        var adStatus: {VT_29:1}EventStatusEnum; 
  1727.                                                                        const pRecordset: {VT_29:1}_Recordset): HResult; stdcall;
  1728.     function  WillChangeRecord {Flags(1), (4/4) CC:4, INV:1, DBG:6}(adReason: {VT_29:0}EventReasonEnum; 
  1729.                                                                     cRecords: {VT_3:0}Integer; 
  1730.                                                                     var adStatus: {VT_29:1}EventStatusEnum; 
  1731.                                                                     const pRecordset: {VT_29:1}_Recordset): HResult; stdcall;
  1732.     function  RecordChangeComplete {Flags(1), (5/5) CC:4, INV:1, DBG:6}(adReason: {VT_29:0}EventReasonEnum; 
  1733.                                                                         cRecords: {VT_3:0}Integer; 
  1734.                                                                         const pError: {VT_29:1}Error; 
  1735.                                                                         var adStatus: {VT_29:1}EventStatusEnum; 
  1736.                                                                         const pRecordset: {VT_29:1}_Recordset): HResult; stdcall;
  1737.     function  WillChangeRecordset {Flags(1), (3/3) CC:4, INV:1, DBG:6}(adReason: {VT_29:0}EventReasonEnum; 
  1738.                                                                        var adStatus: {VT_29:1}EventStatusEnum; 
  1739.                                                                        const pRecordset: {VT_29:1}_Recordset): HResult; stdcall;
  1740.     function  RecordsetChangeComplete {Flags(1), (4/4) CC:4, INV:1, DBG:6}(adReason: {VT_29:0}EventReasonEnum; 
  1741.                                                                            const pError: {VT_29:1}Error; 
  1742.                                                                            var adStatus: {VT_29:1}EventStatusEnum; 
  1743.                                                                            const pRecordset: {VT_29:1}_Recordset): HResult; stdcall;
  1744.     function  WillMove {Flags(1), (3/3) CC:4, INV:1, DBG:6}(adReason: {VT_29:0}EventReasonEnum; 
  1745.                                                             var adStatus: {VT_29:1}EventStatusEnum; 
  1746.                                                             const pRecordset: {VT_29:1}_Recordset): HResult; stdcall;
  1747.     function  MoveComplete {Flags(1), (4/4) CC:4, INV:1, DBG:6}(adReason: {VT_29:0}EventReasonEnum; 
  1748.                                                                 const pError: {VT_29:1}Error; 
  1749.                                                                 var adStatus: {VT_29:1}EventStatusEnum; 
  1750.                                                                 const pRecordset: {VT_29:1}_Recordset): HResult; stdcall;
  1751.     function  EndOfRecordset {Flags(1), (3/3) CC:4, INV:1, DBG:6}(var fMoreData: {VT_11:1}WordBool; 
  1752.                                                                   var adStatus: {VT_29:1}EventStatusEnum; 
  1753.                                                                   const pRecordset: {VT_29:1}_Recordset): HResult; stdcall;
  1754.     function  FetchProgress {Flags(1), (4/4) CC:4, INV:1, DBG:6}(Progress: {VT_3:0}Integer; 
  1755.                                                                  MaxProgress: {VT_3:0}Integer; 
  1756.                                                                  var adStatus: {VT_29:1}EventStatusEnum; 
  1757.                                                                  const pRecordset: {VT_29:1}_Recordset): HResult; stdcall;
  1758.     function  FetchComplete {Flags(1), (3/3) CC:4, INV:1, DBG:6}(const pError: {VT_29:1}Error; 
  1759.                                                                  var adStatus: {VT_29:1}EventStatusEnum; 
  1760.                                                                  const pRecordset: {VT_29:1}_Recordset): HResult; stdcall;
  1761.   end;
  1762.  
  1763. // *********************************************************************//
  1764. // DispIntf:  ConnectionEvents
  1765. // Flags:     (4096) Dispatchable
  1766. // GUID:      {00000400-0000-0010-8000-00AA006D2EA4}
  1767. // *********************************************************************//
  1768.   ConnectionEvents = dispinterface
  1769.     ['{00000400-0000-0010-8000-00AA006D2EA4}']
  1770.     procedure InfoMessage {Flags(2), (3/3) CC:0, INV:1, DBG:4}(const pError: {VT_29:1}Error; 
  1771.                                                                var adStatus: {VT_29:1}EventStatusEnum; 
  1772.                                                                const pConnection: {VT_29:1}_Connection); dispid 0;
  1773.     procedure BeginTransComplete {Flags(2), (4/4) CC:0, INV:1, DBG:4}(TransactionLevel: {VT_3:0}Integer; 
  1774.                                                                       const pError: {VT_29:1}Error; 
  1775.                                                                       var adStatus: {VT_29:1}EventStatusEnum; 
  1776.                                                                       const pConnection: {VT_29:1}_Connection); dispid 1;
  1777.     procedure CommitTransComplete {Flags(2), (3/3) CC:0, INV:1, DBG:4}(const pError: {VT_29:1}Error; 
  1778.                                                                        var adStatus: {VT_29:1}EventStatusEnum; 
  1779.                                                                        const pConnection: {VT_29:1}_Connection); dispid 3;
  1780.     procedure RollbackTransComplete {Flags(2), (3/3) CC:0, INV:1, DBG:4}(const pError: {VT_29:1}Error; 
  1781.                                                                          var adStatus: {VT_29:1}EventStatusEnum; 
  1782.                                                                          const pConnection: {VT_29:1}_Connection); dispid 2;
  1783.     procedure WillExecute {Flags(2), (8/8) CC:0, INV:1, DBG:4}(var Source: {VT_8:1}WideString; 
  1784.                                                                var CursorType: {VT_29:1}CursorTypeEnum; 
  1785.                                                                var LockType: {VT_29:1}LockTypeEnum; 
  1786.                                                                var Options: {VT_3:1}Integer; 
  1787.                                                                var adStatus: {VT_29:1}EventStatusEnum; 
  1788.                                                                const pCommand: {VT_29:1}_Command; 
  1789.                                                                const pRecordset: {VT_29:1}_Recordset; 
  1790.                                                                const pConnection: {VT_29:1}_Connection); dispid 4;
  1791.     procedure ExecuteComplete {Flags(2), (6/6) CC:0, INV:1, DBG:4}(RecordsAffected: {VT_3:0}Integer; 
  1792.                                                                    const pError: {VT_29:1}Error; 
  1793.                                                                    var adStatus: {VT_29:1}EventStatusEnum; 
  1794.                                                                    const pCommand: {VT_29:1}_Command; 
  1795.                                                                    const pRecordset: {VT_29:1}_Recordset; 
  1796.                                                                    const pConnection: {VT_29:1}_Connection); dispid 5;
  1797.     procedure WillConnect {Flags(2), (6/6) CC:0, INV:1, DBG:4}(var ConnectionString: {VT_8:1}WideString; 
  1798.                                                                var UserID: {VT_8:1}WideString; 
  1799.                                                                var Password: {VT_8:1}WideString; 
  1800.                                                                var Options: {VT_3:1}Integer; 
  1801.                                                                var adStatus: {VT_29:1}EventStatusEnum; 
  1802.                                                                const pConnection: {VT_29:1}_Connection); dispid 6;
  1803.     procedure ConnectComplete {Flags(2), (3/3) CC:0, INV:1, DBG:4}(const pError: {VT_29:1}Error; 
  1804.                                                                    var adStatus: {VT_29:1}EventStatusEnum; 
  1805.                                                                    const pConnection: {VT_29:1}_Connection); dispid 7;
  1806.     procedure Disconnect1 {Flags(2), (2/2) CC:0, INV:1, DBG:4}(var adStatus: {VT_29:1}EventStatusEnum; 
  1807.                                                                const pConnection: {VT_29:1}_Connection); dispid 8;
  1808.   end;
  1809.  
  1810. // *********************************************************************//
  1811. // DispIntf:  RecordsetEvents
  1812. // Flags:     (4096) Dispatchable
  1813. // GUID:      {00000266-0000-0010-8000-00AA006D2EA4}
  1814. // *********************************************************************//
  1815.   RecordsetEvents = dispinterface
  1816.     ['{00000266-0000-0010-8000-00AA006D2EA4}']
  1817.     procedure WillChangeField {Flags(2), (4/4) CC:0, INV:1, DBG:4}(cFields: {VT_3:0}Integer; 
  1818.                                                                    Fields: {VT_12:0}OleVariant; 
  1819.                                                                    var adStatus: {VT_29:1}EventStatusEnum; 
  1820.                                                                    const pRecordset: {VT_29:1}_Recordset); dispid 9;
  1821.     procedure FieldChangeComplete {Flags(2), (5/5) CC:0, INV:1, DBG:4}(cFields: {VT_3:0}Integer; 
  1822.                                                                        Fields: {VT_12:0}OleVariant; 
  1823.                                                                        const pError: {VT_29:1}Error; 
  1824.                                                                        var adStatus: {VT_29:1}EventStatusEnum; 
  1825.                                                                        const pRecordset: {VT_29:1}_Recordset); dispid 10;
  1826.     procedure WillChangeRecord {Flags(2), (4/4) CC:0, INV:1, DBG:4}(adReason: {VT_29:0}EventReasonEnum; 
  1827.                                                                     cRecords: {VT_3:0}Integer; 
  1828.                                                                     var adStatus: {VT_29:1}EventStatusEnum; 
  1829.                                                                     const pRecordset: {VT_29:1}_Recordset); dispid 11;
  1830.     procedure RecordChangeComplete {Flags(2), (5/5) CC:0, INV:1, DBG:4}(adReason: {VT_29:0}EventReasonEnum; 
  1831.                                                                         cRecords: {VT_3:0}Integer; 
  1832.                                                                         const pError: {VT_29:1}Error; 
  1833.                                                                         var adStatus: {VT_29:1}EventStatusEnum; 
  1834.                                                                         const pRecordset: {VT_29:1}_Recordset); dispid 12;
  1835.     procedure WillChangeRecordset {Flags(2), (3/3) CC:0, INV:1, DBG:4}(adReason: {VT_29:0}EventReasonEnum; 
  1836.                                                                        var adStatus: {VT_29:1}EventStatusEnum; 
  1837.                                                                        const pRecordset: {VT_29:1}_Recordset); dispid 13;
  1838.     procedure RecordsetChangeComplete {Flags(2), (4/4) CC:0, INV:1, DBG:4}(adReason: {VT_29:0}EventReasonEnum; 
  1839.                                                                            const pError: {VT_29:1}Error; 
  1840.                                                                            var adStatus: {VT_29:1}EventStatusEnum; 
  1841.                                                                            const pRecordset: {VT_29:1}_Recordset); dispid 14;
  1842.     procedure WillMove {Flags(2), (3/3) CC:0, INV:1, DBG:4}(adReason: {VT_29:0}EventReasonEnum; 
  1843.                                                             var adStatus: {VT_29:1}EventStatusEnum; 
  1844.                                                             const pRecordset: {VT_29:1}_Recordset); dispid 15;
  1845.     procedure MoveComplete {Flags(2), (4/4) CC:0, INV:1, DBG:4}(adReason: {VT_29:0}EventReasonEnum; 
  1846.                                                                 const pError: {VT_29:1}Error; 
  1847.                                                                 var adStatus: {VT_29:1}EventStatusEnum; 
  1848.                                                                 const pRecordset: {VT_29:1}_Recordset); dispid 16;
  1849.     procedure EndOfRecordset {Flags(2), (3/3) CC:0, INV:1, DBG:4}(var fMoreData: {VT_11:1}WordBool; 
  1850.                                                                   var adStatus: {VT_29:1}EventStatusEnum; 
  1851.                                                                   const pRecordset: {VT_29:1}_Recordset); dispid 17;
  1852.     procedure FetchProgress {Flags(2), (4/4) CC:0, INV:1, DBG:4}(Progress: {VT_3:0}Integer; 
  1853.                                                                  MaxProgress: {VT_3:0}Integer; 
  1854.                                                                  var adStatus: {VT_29:1}EventStatusEnum; 
  1855.                                                                  const pRecordset: {VT_29:1}_Recordset); dispid 18;
  1856.     procedure FetchComplete {Flags(2), (3/3) CC:0, INV:1, DBG:4}(const pError: {VT_29:1}Error; 
  1857.                                                                  var adStatus: {VT_29:1}EventStatusEnum; 
  1858.                                                                  const pRecordset: {VT_29:1}_Recordset); dispid 19;
  1859.   end;
  1860.  
  1861. // *********************************************************************//
  1862. // Interface: ADOConnectionConstruction15
  1863. // Flags:     (512) Restricted
  1864. // GUID:      {00000516-0000-0010-8000-00AA006D2EA4}
  1865. // *********************************************************************//
  1866.   ADOConnectionConstruction15 = interface(IUnknown)
  1867.     ['{00000516-0000-0010-8000-00AA006D2EA4}']
  1868.     function  Get_DSO {Flags(1), (1/1) CC:4, INV:2, DBG:6}(out ppDSO: {VT_13:1}IUnknown): HResult; stdcall;
  1869.     function  Get_Session {Flags(1), (1/1) CC:4, INV:2, DBG:6}(out ppSession: {VT_13:1}IUnknown): HResult; stdcall;
  1870.     function  WrapDSOandSession {Flags(1), (2/2) CC:4, INV:1, DBG:6}(const pDSO: {VT_13:0}IUnknown; 
  1871.                                                                      const pSession: {VT_13:0}IUnknown): HResult; stdcall;
  1872.   end;
  1873.  
  1874. // *********************************************************************//
  1875. // Interface: ADOConnectionConstruction
  1876. // Flags:     (512) Restricted
  1877. // GUID:      {00000551-0000-0010-8000-00AA006D2EA4}
  1878. // *********************************************************************//
  1879.   ADOConnectionConstruction = interface(ADOConnectionConstruction15)
  1880.     ['{00000551-0000-0010-8000-00AA006D2EA4}']
  1881.   end;
  1882.  
  1883. // *********************************************************************//
  1884. // Interface: ADOCommandConstruction
  1885. // Flags:     (512) Restricted
  1886. // GUID:      {00000517-0000-0010-8000-00AA006D2EA4}
  1887. // *********************************************************************//
  1888.   ADOCommandConstruction = interface(IUnknown)
  1889.     ['{00000517-0000-0010-8000-00AA006D2EA4}']
  1890.     function  Get_OLEDBCommand {Flags(1), (1/1) CC:4, INV:2, DBG:6}(out ppOLEDBCommand: {VT_13:1}IUnknown): HResult; stdcall;
  1891.     function  Set_OLEDBCommand {Flags(1), (1/1) CC:4, INV:4, DBG:6}(const ppOLEDBCommand: {VT_13:0}IUnknown): HResult; stdcall;
  1892.   end;
  1893.  
  1894. // *********************************************************************//
  1895. // Interface: ADORecordsetConstruction
  1896. // Flags:     (4608) Restricted Dispatchable
  1897. // GUID:      {00000283-0000-0010-8000-00AA006D2EA4}
  1898. // *********************************************************************//
  1899.   ADORecordsetConstruction = interface(IDispatch)
  1900.     ['{00000283-0000-0010-8000-00AA006D2EA4}']
  1901.     function  Get_Rowset {Flags(1), (1/1) CC:4, INV:2, DBG:6}(out ppRowset: {VT_13:1}IUnknown): HResult; stdcall;
  1902.     function  Set_Rowset {Flags(1), (1/1) CC:4, INV:4, DBG:6}(const ppRowset: {VT_13:0}IUnknown): HResult; stdcall;
  1903.     function  Get_Chapter {Flags(1), (1/1) CC:4, INV:2, DBG:6}(out plChapter: {VT_3:1}Integer): HResult; stdcall;
  1904.     function  Set_Chapter {Flags(1), (1/1) CC:4, INV:4, DBG:6}(plChapter: {VT_3:0}Integer): HResult; stdcall;
  1905.     function  Get_RowPosition {Flags(1), (1/1) CC:4, INV:2, DBG:6}(out ppRowPos: {VT_13:1}IUnknown): HResult; stdcall;
  1906.     function  Set_RowPosition {Flags(1), (1/1) CC:4, INV:4, DBG:6}(const ppRowPos: {VT_13:0}IUnknown): HResult; stdcall;
  1907.   end;
  1908.  
  1909. // *********************************************************************//
  1910. // Interface: Field15
  1911. // Flags:     (4560) Hidden Dual NonExtensible OleAutomation Dispatchable
  1912. // GUID:      {00000505-0000-0010-8000-00AA006D2EA4}
  1913. // *********************************************************************//
  1914.   Field15 = interface(_ADO)
  1915.     ['{00000505-0000-0010-8000-00AA006D2EA4}']
  1916.     function  Get_ActualSize {Flags(1), (1/0) CC:0, INV:2, DBG:6}: Integer; safecall;
  1917.     function  Get_Attributes {Flags(1), (1/0) CC:0, INV:2, DBG:6}: Integer; safecall;
  1918.     function  Get_DefinedSize {Flags(1), (1/0) CC:0, INV:2, DBG:6}: Integer; safecall;
  1919.     function  Get_Name {Flags(1), (1/0) CC:0, INV:2, DBG:6}: WideString; safecall;
  1920.     function  Get_Type_ {Flags(1), (1/0) CC:0, INV:2, DBG:6}: DataTypeEnum; safecall;
  1921.     function  Get_Value {Flags(1), (1/0) CC:0, INV:2, DBG:6}: OleVariant; safecall;
  1922.     procedure Set_Value {Flags(1), (1/1) CC:0, INV:4, DBG:6}(pvar: {VT_12:0}OleVariant); safecall;
  1923.     function  Get_Precision {Flags(1), (1/0) CC:0, INV:2, DBG:6}: Byte; safecall;
  1924.     function  Get_NumericScale {Flags(1), (1/0) CC:0, INV:2, DBG:6}: Byte; safecall;
  1925.     procedure AppendChunk {Flags(1), (1/1) CC:0, INV:1, DBG:6}(Data: {VT_12:0}OleVariant); safecall;
  1926.     function  GetChunk {Flags(1), (2/1) CC:0, INV:1, DBG:6}(Length: {VT_3:0}Integer): OleVariant; safecall;
  1927.     function  Get_OriginalValue {Flags(1), (1/0) CC:0, INV:2, DBG:6}: OleVariant; safecall;
  1928.     function  Get_UnderlyingValue {Flags(1), (1/0) CC:0, INV:2, DBG:6}: OleVariant; safecall;
  1929.     property ActualSize: Integer read Get_ActualSize;
  1930.     property Attributes: Integer read Get_Attributes;
  1931.     property DefinedSize: Integer read Get_DefinedSize;
  1932.     property Name: WideString read Get_Name;
  1933.     property Type_: DataTypeEnum read Get_Type_;
  1934.     property Value: OleVariant read Get_Value write Set_Value;
  1935.     property Precision: Byte read Get_Precision;
  1936.     property NumericScale: Byte read Get_NumericScale;
  1937.     property OriginalValue: OleVariant read Get_OriginalValue;
  1938.     property UnderlyingValue: OleVariant read Get_UnderlyingValue;
  1939.   end;
  1940.  
  1941. // *********************************************************************//
  1942. // DispIntf:  Field15Disp
  1943. // Flags:     (4560) Hidden Dual NonExtensible OleAutomation Dispatchable
  1944. // GUID:      {00000505-0000-0010-8000-00AA006D2EA4}
  1945. // *********************************************************************//
  1946.   Field15Disp = dispinterface
  1947.     ['{00000505-0000-0010-8000-00AA006D2EA4}']
  1948.     property ActualSize {Flags(2), (1/0) CC:0, INV:2, DBG:6}: Integer readonly dispid 1109;
  1949.     property Attributes {Flags(2), (1/0) CC:0, INV:2, DBG:6}: Integer readonly dispid 1036;
  1950.     property DefinedSize {Flags(2), (1/0) CC:0, INV:2, DBG:6}: Integer readonly dispid 1103;
  1951.     property Name {Flags(2), (1/0) CC:0, INV:2, DBG:6}: WideString readonly dispid 1100;
  1952.     property Type_ {Flags(2), (1/0) CC:0, INV:2, DBG:6}: DataTypeEnum readonly dispid 1102;
  1953.     property Value {Flags(2), (1/0) CC:0, INV:2, DBG:6}: OleVariant dispid 0;
  1954.     property Precision {Flags(2), (1/0) CC:0, INV:2, DBG:6}: Byte readonly dispid 1610809351;
  1955.     property NumericScale {Flags(2), (1/0) CC:0, INV:2, DBG:6}: Byte readonly dispid 1610809352;
  1956.     procedure AppendChunk {Flags(2), (1/1) CC:0, INV:1, DBG:4}(Data: {VT_12:0}OleVariant); dispid 1107;
  1957.     function  GetChunk {Flags(2), (2/1) CC:0, INV:1, DBG:4}(Length: {VT_3:0}Integer): OleVariant; dispid 1108;
  1958.     property OriginalValue {Flags(2), (1/0) CC:0, INV:2, DBG:6}: OleVariant readonly dispid 1104;
  1959.     property UnderlyingValue {Flags(2), (1/0) CC:0, INV:2, DBG:6}: OleVariant readonly dispid 1105;
  1960.     property Properties {Flags(2), (1/0) CC:0, INV:2, DBG:6}: Properties readonly dispid 500;
  1961.   end;
  1962.  
  1963. // *********************************************************************//
  1964. // The Class CoConnection provides a Create and CreateRemote method to          
  1965. // create instances of the default interface _Connection exposed by              
  1966. // the CoClass Connection. The functions are intended to be used by             
  1967. // clients wishing to automate the CoClass objects exposed by the         
  1968. // server of this typelibrary.                                            
  1969. // *********************************************************************//
  1970.   CoConnection = class
  1971.     class function Create: _Connection;
  1972.     class function CreateRemote(const MachineName: string): _Connection;
  1973.   end;
  1974.  
  1975. // *********************************************************************//
  1976. // The Class CoCommand provides a Create and CreateRemote method to          
  1977. // create instances of the default interface _Command exposed by              
  1978. // the CoClass Command. The functions are intended to be used by             
  1979. // clients wishing to automate the CoClass objects exposed by the         
  1980. // server of this typelibrary.                                            
  1981. // *********************************************************************//
  1982.   CoCommand = class
  1983.     class function Create: _Command;
  1984.     class function CreateRemote(const MachineName: string): _Command;
  1985.   end;
  1986.  
  1987. // *********************************************************************//
  1988. // The Class CoRecordset provides a Create and CreateRemote method to          
  1989. // create instances of the default interface _Recordset exposed by              
  1990. // the CoClass Recordset. The functions are intended to be used by             
  1991. // clients wishing to automate the CoClass objects exposed by the         
  1992. // server of this typelibrary.                                            
  1993. // *********************************************************************//
  1994.   CoRecordset = class
  1995.     class function Create: _Recordset;
  1996.     class function CreateRemote(const MachineName: string): _Recordset;
  1997.   end;
  1998.  
  1999. // *********************************************************************//
  2000. // The Class CoParameter provides a Create and CreateRemote method to          
  2001. // create instances of the default interface _Parameter exposed by              
  2002. // the CoClass Parameter. The functions are intended to be used by             
  2003. // clients wishing to automate the CoClass objects exposed by the         
  2004. // server of this typelibrary.                                            
  2005. // *********************************************************************//
  2006.   CoParameter = class
  2007.     class function Create: _Parameter;
  2008.     class function CreateRemote(const MachineName: string): _Parameter;
  2009.   end;
  2010.  
  2011. implementation
  2012.  
  2013. uses ComObj;
  2014.  
  2015. class function CoConnection.Create: _Connection;
  2016. begin
  2017.   Result := CreateComObject(CLASS_Connection) as _Connection;
  2018. end;
  2019.  
  2020. class function CoConnection.CreateRemote(const MachineName: string): _Connection;
  2021. begin
  2022.   Result := CreateRemoteComObject(MachineName, CLASS_Connection) as _Connection;
  2023. end;
  2024.  
  2025. class function CoCommand.Create: _Command;
  2026. begin
  2027.   Result := CreateComObject(CLASS_Command) as _Command;
  2028. end;
  2029.  
  2030. class function CoCommand.CreateRemote(const MachineName: string): _Command;
  2031. begin
  2032.   Result := CreateRemoteComObject(MachineName, CLASS_Command) as _Command;
  2033. end;
  2034.  
  2035. class function CoRecordset.Create: _Recordset;
  2036. begin
  2037.   Result := CreateComObject(CLASS_Recordset) as _Recordset;
  2038. end;
  2039.  
  2040. class function CoRecordset.CreateRemote(const MachineName: string): _Recordset;
  2041. begin
  2042.   Result := CreateRemoteComObject(MachineName, CLASS_Recordset) as _Recordset;
  2043. end;
  2044.  
  2045. class function CoParameter.Create: _Parameter;
  2046. begin
  2047.   Result := CreateComObject(CLASS_Parameter) as _Parameter;
  2048. end;
  2049.  
  2050. class function CoParameter.CreateRemote(const MachineName: string): _Parameter;
  2051. begin
  2052.   Result := CreateRemoteComObject(MachineName, CLASS_Parameter) as _Parameter;
  2053. end;
  2054.  
  2055. end.
  2056.