#Include-once ;; http://msdn.microsoft.com/en-us/library/ms678086%28VS.85%29.aspx Global Const $adoProviderMSJet = 'Microsoft.Jet.OLEDB.4.0; ' ;CursorTypeEnum Global Const $adOpenDynamic = 2 Global Const $adOpenForwardOnly = 0 Global Const $adOpenKeyset = 1 Global Const $adOpenStatic = 3 Global Const $adOpenUnspecified = -1 ;CursorOptionEnum Global Const $adAddNew = 16778240 Global Const $adApproxPosition = 16384 Global Const $adBookmark = 8192 Global Const $adDelete = 16779264 Global Const $adFind = 524288 Global Const $adHoldRecords = 256 Global Const $adIndex = 8388608 Global Const $adMovePrevious = 512 Global Const $adNotify = 262144 Global Const $adResync = 131072 Global Const $adSeek = 4194304 Global Const $adUpdate = 16809984 Global Const $adUpdateBatch = 65536 ;LockTypeEnum Global Const $adLockBatchOptimistic = 4 Global Const $adLockOptimistic = 3 Global Const $adLockPessimistic = 2 Global Const $adLockReadOnly = 1 Global Const $adLockUnspecified = -1 ;ExecuteOptionEnum Global Const $adAsyncExecute = 16 Global Const $adAsyncFetch = 32 Global Const $adAsyncFetchNonBlocking = 64 Global Const $adExecuteNoRecords = 128 Global Const $adOptionUnspecified = -1 ;ConnectOptionEnum Global Const $adAsyncConnect = 16 Global Const $adConnectUnspecified = -1 ;ObjectStateEnum Global Const $adStateClosed = 0 Global Const $adStateConnecting = 2 Global Const $adStateExecuting = 4 Global Const $adStateFetching = 8 Global Const $adStateOpen = 1 ;CursorLocationEnum Global Const $adUseClient = 3 Global Const $adUseClientBatch = 3 Global Const $adUseNone = 1 Global Const $adUseServer = 2 ;DataTypeEnum Global Const $adArray = 8192 Global Const $adBigInt = 20 Global Const $adBinary = 128 Global Const $adBoolean = 11 Global Const $adBSTR = 8 Global Const $adChapter = 136 Global Const $adChar = 129 Global Const $adCurrency = 6 Global Const $adDate = 7 Global Const $adDBDate = 133 Global Const $adDBTime = 134 Global Const $adDBTimeStamp = 135 Global Const $adDecimal = 14 Global Const $adDouble = 5 Global Const $adEmpty = 0 Global Const $adError = 10 Global Const $adFileTime = 64 Global Const $adGUID = 72 Global Const $adIDispatch = 9 Global Const $adInteger = 3 Global Const $adIUnknown = 13 Global Const $adLongVarBinary = 205 Global Const $adLongVarChar = 201 Global Const $adLongVarWChar = 203 Global Const $adNumeric = 131 Global Const $adPropVariant = 138 Global Const $adSingle = 4 Global Const $adSmallInt = 2 Global Const $adTinyInt = 16 Global Const $adUnsignedBigInt = 21 Global Const $adUnsignedInt = 19 Global Const $adUnsignedSmallInt = 18 Global Const $adUnsignedTinyInt = 17 Global Const $adUserDefined = 132 Global Const $adVarBinary = 204 Global Const $adVarChar = 200 Global Const $adVariant = 12 Global Const $adVarNumeric = 139 Global Const $adVarWChar = 202 Global Const $adWChar = 130 ;FieldAttributeEnum Global Const $adFldCacheDeferred = 4096 Global Const $adFldFixed = 16 Global Const $adFldIsChapter = 8192 Global Const $adFldIsCollection = 262144 Global Const $adFldIsDefaultStream = 131072 Global Const $adFldIsNullable = 32 Global Const $adFldIsRowURL = 65536 Global Const $adFldKeyColumn = 32768 Global Const $adFldLong = 128 Global Const $adFldMayBeNull = 64 Global Const $adFldMayDefer = 2 Global Const $adFldNegativeScale = 16384 Global Const $adFldRowID = 256 Global Const $adFldRowVersion = 512 Global Const $adFldUnknownUpdatable = 8 Global Const $adFldUnspecified = -1 Global Const $adFldUpdatable = 4 ;EditModeEnum Global Const $adEditAdd = 2 Global Const $adEditDelete = 4 Global Const $adEditInProgress = 1 Global Const $adEditNone = 0 ;RecordStatusEnum Global Const $adRecCanceled = 256 Global Const $adRecCantRelease = 1024 Global Const $adRecConcurrencyViolation = 2048 Global Const $adRecDBDeleted = 262144 Global Const $adRecDeleted = 4 Global Const $adRecIntegrityViolation = 4096 Global Const $adRecInvalid = 16 Global Const $adRecMaxChangesExceeded = 8192 Global Const $adRecModified = 2 Global Const $adRecMultipleChanges = 64 Global Const $adRecNew = 1 Global Const $adRecObjectOpen = 16384 Global Const $adRecOK = 0 Global Const $adRecOutOfMemory = 32768 Global Const $adRecPendingChanges = 128 Global Const $adRecPermissionDenied = 65536 Global Const $adRecSchemaViolation = 131072 Global Const $adRecUnmodified = 8 ;GetRowsOptionEnum Global Const $adGetRowsRest = -1 ;PositionEnum Global Const $adPosBOF = -2 Global Const $adPosEOF = -3 Global Const $adPosUnknown = -1 ;BookmarkEnum Global Const $adBookmarkCurrent = 0 Global Const $adBookmarkFirst = 1 Global Const $adBookmarkLast = 2 ;MarshalOptionsEnum Global Const $adMarshalAll = 0 Global Const $adMarshalModifiedOnly = 1 ;AffectEnum Global Const $adAffectAll = 3 Global Const $adAffectAllChapters = 4 Global Const $adAffectCurrent = 1 Global Const $adAffectGroup = 2 ;ResyncEnum Global Const $adResyncAllValues = 2 Global Const $adResyncUnderlyingValues = 1 ;CompareEnum Global Const $adCompareEqual = 1 Global Const $adCompareGreaterThan = 2 Global Const $adCompareLessThan = 0 Global Const $adCompareNotComparable = 4 Global Const $adCompareNotEqual = 3 ;FilterGroupEnum Global Const $adFilterAffectedRecords = 2 Global Const $adFilterConflictingRecords = 5 Global Const $adFilterFetchedRecords = 3 Global Const $adFilterNone = 0 Global Const $adFilterPendingRecords = 1 Global Const $adFilterPredicate = 4 ;SearchDirection Global Const $adSearchBackward = -1 Global Const $adSearchForward = 1 ;PersistFormatEnum Global Const $adPersistADTG = 0 Global Const $adPersistXML = 1 ;StringFormatEnum Global Const $adClipString = 2 ;ConnectPromptEnum Global Const $adPromptAlways = 1 Global Const $adPromptComplete = 2 Global Const $adPromptCompleteRequired = 3 Global Const $adPromptNever = 4 ;ConnectModeEnum Global Const $adModeRead = 1 Global Const $adModeReadWrite = 3 Global Const $adModeRecursive = 4194304 Global Const $adModeShareDenyNone = 16 Global Const $adModeShareDenyRead = 4 Global Const $adModeShareDenyWrite = 8 Global Const $adModeShareExclusive = 12 Global Const $adModeUnknown = 0 Global Const $adModeWrite = 2 ;RecordCreateOptionsEnum Global Const $adCreateCollection = 8192 Global Const $adCreateNonCollection = 0 Global Const $adCreateOverwrite = 67108864 Global Const $adCreateStructDoc = -2147483648 Global Const $adFailIfNotExists = -1 Global Const $adOpenIfExists = 33554432 ;RecordOpenOptionsEnum Global Const $adDelayFetchFields = 32768 Global Const $adDelayFetchStream = 16384 Global Const $adOpenAsync = 4096 Global Const $adOpenRecordUnspecified = -1 Global Const $adOpenSource = 8388608 ;IsolationLevelEnum Global Const $adXactBrowse = 256 Global Const $adXactChaos = 16 Global Const $adXactCursorStability = 4096 Global Const $adXactIsolated = 1048576 Global Const $adXactReadCommitted = 4096 Global Const $adXactReadUncommitted = 256 Global Const $adXactRepeatableRead = 65536 Global Const $adXactSerializable = 1048576 Global Const $adXactUnspecified = -1 ;XactAttributeEnum Global Const $adXactAbortRetaining = 262144 Global Const $adXactAsyncPhaseOne = 524288 Global Const $adXactCommitRetaining = 131072 Global Const $adXactSyncPhaseOne = 1048576 ;PropertyAttributesEnum Global Const $adPropNotSupported = 0 Global Const $adPropOptional = 2 Global Const $adPropRead = 512 Global Const $adPropRequired = 1 Global Const $adPropWrite = 1024 ;ErrorValueEnum Global Const $adErrBoundToCommand = 3707 Global Const $adErrCannotComplete = 3732 Global Const $adErrCantChangeConnection = 3748 Global Const $adErrCantChangeProvider = 3220 Global Const $adErrCantConvertvalue = 3724 Global Const $adErrCantCreate = 3725 Global Const $adErrCatalogNotSet = 3747 Global Const $adErrColumnNotOnThisRow = 3726 Global Const $adErrDataConversion = 3421 Global Const $adErrDataOverflow = 3721 Global Const $adErrDelResOutOfScope = 3738 Global Const $adErrDenyNotSupported = 3750 Global Const $adErrDenyTypeNotSupported = 3751 Global Const $adErrFeatureNotAvailable = 3251 Global Const $adErrFieldsUpdateFailed = 3749 Global Const $adErrIllegalOperation = 3219 Global Const $adErrIntegrityViolation = 3719 Global Const $adErrInTransaction = 3246 Global Const $adErrInvalidArgument = 3001 Global Const $adErrInvalidConnection = 3709 Global Const $adErrInvalidParamInfo = 3708 Global Const $adErrInvalidTransaction = 3714 Global Const $adErrInvalidURL = 3729 Global Const $adErrItemNotFound = 3265 Global Const $adErrNoCurrentRecord = 3021 Global Const $adErrNotExecuting = 3715 Global Const $adErrNotReentrant = 3710 Global Const $adErrObjectClosed = 3704 Global Const $adErrObjectInCollection = 3367 Global Const $adErrObjectNotSet = 3420 Global Const $adErrObjectOpen = 3705 Global Const $adErrOpeningFile = 3002 Global Const $adErrOperationCancelled = 3712 Global Const $adErrOutOfSpace = 3734 Global Const $adErrPermissionDenied = 3720 Global Const $adErrPropConflicting = 3742 Global Const $adErrPropInvalidColumn = 3739 Global Const $adErrPropInvalidOption = 3740 Global Const $adErrPropInvalidValue = 3741 Global Const $adErrPropNotAllSettable = 3743 Global Const $adErrPropNotSet = 3744 Global Const $adErrPropNotSettable = 3745 Global Const $adErrPropNotSupported = 3746 Global Const $adErrProviderFailed = 3000 Global Const $adErrProviderNotFound = 3706 Global Const $adErrReadFile = 3003 Global Const $adErrResourceExists = 3731 Global Const $adErrResourceLocked = 3730 Global Const $adErrResourceOutOfScope = 3735 Global Const $adErrSchemaViolation = 3722 Global Const $adErrSignMismatch = 3723 Global Const $adErrStillConnecting = 3713 Global Const $adErrStillExecuting = 3711 Global Const $adErrTreePermissionDenied = 3728 Global Const $adErrUnavailable = 3736 Global Const $adErrUnsafeOperation = 3716 Global Const $adErrURLDoesNotExist = 3727 Global Const $adErrURLNamedRowDoesNotExist = 3737 Global Const $adErrVolumeNotFound = 3733 Global Const $adErrWriteFile = 3004 Global Const $adwrnSecurityDialog = 3717 Global Const $adwrnSecurityDialogHeader = 3718 ;ParameterAttributesEnum Global Const $adParamLong = 128 Global Const $adParamNullable = 64 Global Const $adParamSigned = 16 ;ParameterDirectionEnum Global Const $adParamInput = 1 Global Const $adParamInputOutput = 3 Global Const $adParamOutput = 2 Global Const $adParamReturnValue = 4 Global Const $adParamUnknown = 0 ;CommandTypeEnum Global Const $adCmdFile = 256 Global Const $adCmdStoredProc = 4 Global Const $adCmdTable = 2 Global Const $adCmdTableDirect = 512 Global Const $adCmdText = 1 Global Const $adCmdUnknown = 8 Global Const $adCmdUnspecified = -1 ;EventStatusEnum Global Const $adStatusCancel = 4 Global Const $adStatusCantDeny = 3 Global Const $adStatusErrorsOccurred = 2 Global Const $adStatusOK = 1 Global Const $adStatusUnwantedEvent = 5 ;EventReasonEnum Global Const $adRsnAddNew = 1 Global Const $adRsnClose = 9 Global Const $adRsnDelete = 2 Global Const $adRsnFirstChange = 11 Global Const $adRsnMove = 10 Global Const $adRsnMoveFirst = 12 Global Const $adRsnMoveLast = 15 Global Const $adRsnMoveNext = 13 Global Const $adRsnMovePrevious = 14 Global Const $adRsnRequery = 7 Global Const $adRsnResynch = 8 Global Const $adRsnUndoAddNew = 5 Global Const $adRsnUndoDelete = 6 Global Const $adRsnUndoUpdate = 4 Global Const $adRsnUpdate = 3 ;SchemaEnum Global Const $adSchemaAsserts = 0 Global Const $adSchemaCatalogs = 1 Global Const $adSchemaCharacterSets = 2 Global Const $adSchemaCheckConstraints = 5 Global Const $adSchemaCollations = 3 Global Const $adSchemaColumnPrivileges = 13 Global Const $adSchemaColumns = 4 Global Const $adSchemaColumnsDomainUsage = 11 Global Const $adSchemaConstraintColumnUsage = 6 Global Const $adSchemaConstraintTableUsage = 7 Global Const $adSchemaCubes = 32 Global Const $adSchemaDBInfoKeywords = 30 Global Const $adSchemaDBInfoLiterals = 31 Global Const $adSchemaDimensions = 33 Global Const $adSchemaForeignKeys = 27 Global Const $adSchemaHierarchies = 34 Global Const $adSchemaIndexes = 12 Global Const $adSchemaKeyColumnUsage = 8 Global Const $adSchemaLevels = 35 Global Const $adSchemaMeasures = 36 Global Const $adSchemaMembers = 38 Global Const $adSchemaPrimaryKeys = 28 Global Const $adSchemaProcedureColumns = 29 Global Const $adSchemaProcedureParameters = 26 Global Const $adSchemaProcedures = 16 Global Const $adSchemaProperties = 37 Global Const $adSchemaProviderSpecific = -1 Global Const $adSchemaProviderTypes = 22 Global Const $adSchemaReferentialConstraints = 9 Global Const $adSchemaReferentialContraints = 9 Global Const $adSchemaSchemata = 17 Global Const $adSchemaSQLLanguages = 18 Global Const $adSchemaStatistics = 19 Global Const $adSchemaTableConstraints = 10 Global Const $adSchemaTablePrivileges = 14 Global Const $adSchemaTables = 20 Global Const $adSchemaTranslations = 21 Global Const $adSchemaTrustees = 39 Global Const $adSchemaUsagePrivileges = 15 Global Const $adSchemaViewColumnUsage = 24 Global Const $adSchemaViews = 23 Global Const $adSchemaViewTableUsage = 25 ;FieldStatusEnum Global Const $adFieldAlreadyExists = 26 Global Const $adFieldBadStatus = 12 Global Const $adFieldCannotComplete = 20 Global Const $adFieldCannotDeleteSource = 23 Global Const $adFieldCantConvertValue = 2 Global Const $adFieldCantCreate = 7 Global Const $adFieldDataOverflow = 6 Global Const $adFieldDefault = 13 Global Const $adFieldDoesNotExist = 16 Global Const $adFieldIgnore = 15 Global Const $adFieldIntegrityViolation = 10 Global Const $adFieldInvalidURL = 17 Global Const $adFieldIsNull = 3 Global Const $adFieldOK = 0 Global Const $adFieldOutOfSpace = 22 Global Const $adFieldPendingChange = 262144 Global Const $adFieldPendingDelete = 131072 Global Const $adFieldPendingInsert = 65536 Global Const $adFieldPendingUnknown = 524288 Global Const $adFieldPendingUnknownDelete = 1048576 Global Const $adFieldPermissionDenied = 9 Global Const $adFieldReadOnly = 24 Global Const $adFieldResourceExists = 19 Global Const $adFieldResourceLocked = 18 Global Const $adFieldResourceOutOfScope = 25 Global Const $adFieldSchemaViolation = 11 Global Const $adFieldSignMismatch = 5 Global Const $adFieldTruncated = 4 Global Const $adFieldUnavailable = 8 Global Const $adFieldVolumeNotFound = 21 ;SeekEnum Global Const $adSeekAfter = 8 Global Const $adSeekAfterEQ = 4 Global Const $adSeekBefore = 32 Global Const $adSeekBeforeEQ = 16 Global Const $adSeekFirstEQ = 1 Global Const $adSeekLastEQ = 2 ;ADCPROP_UPDATECRITERIA_ENUM Global Const $adCriteriaAllCols = 1 Global Const $adCriteriaKey = 0 Global Const $adCriteriaTimeStamp = 3 Global Const $adCriteriaUpdCols = 2 ;ADCPROP_ASYNCTHREADPRIORITY_ENUM Global Const $adPriorityAboveNormal = 4 Global Const $adPriorityBelowNormal = 2 Global Const $adPriorityHighest = 5 Global Const $adPriorityLowest = 1 Global Const $adPriorityNormal = 3 ;ADCPROP_AUTORECALC_ENUM Global Const $adRecalcAlways = 1 Global Const $adRecalcUpFront = 0 ;ADCPROP_UPDATERESYNC_ENUM Global Const $adResyncAll = 15 Global Const $adResyncAutoIncrement = 1 Global Const $adResyncConflicts = 2 Global Const $adResyncInserts = 8 Global Const $adResyncNone = 0 Global Const $adResyncUpdates = 4 ;MoveRecordOptionsEnum Global Const $adMoveAllowEmulation = 4 Global Const $adMoveDontUpdateLinks = 2 Global Const $adMoveOverWrite = 1 Global Const $adMoveUnspecified = -1 ;CopyRecordOptionsEnum Global Const $adCopyAllowEmulation = 4 Global Const $adCopyNonRecursive = 2 Global Const $adCopyOverWrite = 1 Global Const $adCopyUnspecified = -1 ;StreamTypeEnum Global Const $adTypeBinary = 1 Global Const $adTypeText = 2 ;LineSeparatorEnum Global Const $adCR = 13 Global Const $adCRLF = -1 Global Const $adLF = 10 ;StreamOpenOptionsEnum Global Const $adOpenStreamAsync = 1 Global Const $adOpenStreamFromRecord = 4 Global Const $adOpenStreamUnspecified = -1 ;StreamWriteEnum Global Const $adWriteChar = 0 Global Const $adWriteLine = 1 Global Const $stWriteChar = 0 Global Const $stWriteLine = 1 ;SaveOptionsEnum Global Const $adSaveCreateNotExist = 1 Global Const $adSaveCreateOverWrite = 2 ;FieldEnum Global Const $adDefaultStream = -1 Global Const $adRecordURL = -2 ;StreamReadEnum Global Const $adReadAll = -1 Global Const $adReadLine = -2 ;RecordTypeEnum Global Const $adCollectionRecord = 1 Global Const $adSimpleRecord = 0 Global Const $adStructDoc = 2